Материал из MODFAQ.RU — моддинг классического S.T.A.L.K.E.R., TES и Fallout
История разработки движка X-Ray берет своё начало в 1998 году, когда двое начинающих программистов GSC Game World: Олесь Шишковцов (Oles) и Александр Максимчук (AlexMX) – объединяются для совместной работы над собственным 3d-движком. К 2000 году, на движке выпускается демо-версия игры "Морской бой". С этого момента начинается многолетняя разработка игры S.T.A.L.K.E.R. и движка X-Ray[2].
Разработчики движка[5]
- Олесь Шишковцов – ведущий программист, рендер;
- Александр Максимчук – ведущий программист, редакторы;
- Дмитрий Ясенев – ведущий программист, ИИ/Симуляция;
- Андрей Коломиец – ведущий программист, наполнение;
- Виталий Максимов – программист, сетевая игра;
- Константин Слипченко – программист, физика;
- Сергей Жемейцев – программист, ИИ монстров;
- Сергей Иванцов – программист, оптимизация;
- Юрий Добронравин – программист, наполнение, интерфейс.
Ранние этапы разработки
Дизайн-документ 2002 года[6][7]
|
The engine itself is designed with high scalability in mind to deliver the best possible experience on a wide range of consumer hardware. It is best illustrated by its capability to render high-quality photorealistic images even on low-end video boards with interactive frame rates. When running on high-end hardware the engine automatically utilizes available resources and specific features, such as vertex and pixel shading capabilities, to attain high level of gameplay immersion. Ability to create both indoor and outdoor scenes, realistic physics, scalable network and impressive sound enables us to develop immense game worlds of today and days to come.
Powerful tool base allows direct interaction between the engine and popular modelling packages such as 3D Studio MAX, Lightwave3D, Maya, SoftImage, etc. This unique feature allows designers to quickly prototype game levels, effects, etc.
Main features:
- Levels combining closed spaces as well as enormous open areas
- Visualization optimized for hardware TnL (both FF and shading capable parts)
- Continuous level of detail technology for all the geometry
- ~100 000 polygons per frame at 60 fps on average hardware
- Detailed character models (500-10 000 polys)
- Powerful skeleton-based animation allows usage of motion-capture hardware and produces smooth and realistic motion of characters
- High-speed blended animation system capable of up to infinity number of bone interpolation & modulation - SSE/3Dnow! Technologies used for skinning and forward kinematics - Vertex shaders used on shading capable hardware
- Detail objects (grass/small stones/etc)
- Portal-style, non-linear subdivision based visibility detection system
- Optimized for T&L hardware in the way of grouping primitives to large-size batches - Greatly reduces overdraw - which is the main slowdown on even high-level video boards - Usage of antiportals (aka Occluders) for occlusion culling
- Intelligent hardware state caching technology
- Both Direct and Radiosity lighting models
- Colored dynamic lights and dynamic “soft” shadows
- Character shadowing - Intelligent light sources selection, clipping, merging - Makes possible more than 50 dynamic lights per frame at reasonable FPS-es - Ordinary stuff: flares, coronas, etc
- Intelligent shader subsystem
- Dynamically generated textures
- Reflections, chrome effects, etc.
- VR-Simulation engine optimized for massive payload
- High-performance collision detection allowing simultaneous motion of large number of characters in high polygonal environment
- Realistic physics simulation (ballistic, motions, fluid engine, snow, rain, explosions, etc.)
- Motion compensation scheme
- Hides many visual artifacts produced by FPS-es instability
- Particle system with real physics
- High quality HRTF 3D-sound with clipping and partial wave tracing
- “Low-penalty” & “low-delay” reaction technology (less then 1ms to start HRTF 3D Sound Source to play)
- Context-relative multiple-mixed music streams in MP3/MP2/WMA/ADPCM formats
- Computer rivals possess virtual hearing and sight, which when combined with worked out AI makes them tough enemies
- Different kinds of enemies, military vehicles, helicopters, boats, etc (work in progress)
- Accurate hit calculation algorithm
- Powerful built-in scripting language
- Full realization of C-language and partial C++ - Only 6-8 times slower than real (x86) code
- AI
- Simulation Level-Of-Detail and Culling - Virtual sight, hearing, feeling - Fuzzy logic controlled agents - Advanced terrain reasoning with tactical assessment - Adapting tactics with reinforcement learning - Dedicated snipping tactics - Team maneuvers
- Support for all D3D compatible accelerators, starting from 2nd generation (TNT/Voodo2/etc);
- The most important part of the mathematics is optimized for SSE & 3Dnow! instructions
- Editor supports both 3DsMAX 2.5/3/4 and Lightwave 6.5/7 as modeling tools
|
Презентация 2003 года[8][9]
|
X-Ray is a powerful game engine implementing cutting-edge technoligies to make it one of the best 3D engines as of today. The engine's might along with user-friendly tools ensures easy creation of most technologically advanced games with immersing visual and gameplay presentation of newest accelerators generation - NV30,31,34,35.
List of main features provided with the X-Ray engine:
Common
- Levels combining closed spaces as well as enormous open areas
- One demand loading makes possible to crate single huge level
- Game time 3ow, change of day and night (WIP)
- Powerful skeleton-based animation allows usage of motion-capture hardware and produces smooth and realistic motion of characters
- VR-Simulation engine optimized for massive payload
Render
The engine features two renderers deigned for DX7,8 and DX 9 generations of video cards.
DX7,8 render:
- Support for all D3D compatible accelerators, starting from 3rd generation (GeForce2), optimized for GeForce3 and up.
- Visualization optimized for hardware TnL (both FF and shading capable parts)
- Continuous level of detail technology for all the geometry
- ~1 000 000 polygons per frame at 60 fps on average hardware
- Detailed character models up to 10 000 polys
- High-speed blended animation system capable of up to inBnity number of bone interpolation & modulation
- SSE/3Dnow! Technologies used for skinning and forward kinematics
- Visibility determination
- Portal-style, non-linear subdivision based visibility detection system
- Optimized for T&L hardware in the way of grouping primitives to large-size batches
- Dynamic occlusion culling, contribution culling (WIP)
- Adaptive hardware state caching technology
- Lighting
- Colored dynamic lights and dynamic "soft" shadows
- Breakable light sources
- Animated lights
- Character shadowing
- Intelligent light sources selection, clipping, merging
- Detail mapping (diffuse, normal-maps)
- Standart effects like 3ares, coronas, etc.
- Particle system with real physics and powerful scripting engine.
- Screen post-processing (cinematic effects)
- Shading
- Shader library is central to every part of our rendering pipeline
- Completely abstracts the graphics API
- Multi-pass Rendering
- Fallback Shaders
- Facilitates cross-platform development
- Separates shader writing from engine development
DX 9 Render:
DX 9 Render has all the same features as rst renderer, but har following in addition:
- Render use the so called "deferred shading" approach to break the barriers in polygon count found in the current and future leading game-engines.
- More than 3 million of fully bump-mapped polygons representing each frame and true per-pixel complex realtime dynamic lighting with light-material interaction.
- The use of high precision on up-to-date hardware allows basing the engine fully on HDR (High Dynamic Range) lighting
- Natural rendering of complex materials with proper light interaction, such as rusted metal, natural iora, glass, realistic skin, etc.
- Every pixel (not the texel) here can have it's own material with several coef cients
- Soft, physically correct shadows (unlike stencil ones) from everything onto everything
- True per-pixel lighting, physical umbra/penumbra compulations
- Hundreds of lighting per frame in realtime
- Natvie support for volumetric effects like fog, mist, lighting
- Frame buffer post-processing and photoshop-like effect (complex lters) push it even higher up the cinematic quality ladder.
Detail objects
- Grass, small stones, etc.
- Traces, Wind, Reaction to pressing, Turbulence ows
Physics
- Simulation speed outperforms many commercial engines
- Real-time IKm vehicle physics, etc.
- Collision database with low memory usage
- Collision detection optimized for large number of queries in highly polygonal environment
- ballistic, motions, uid engine, snow, rain, explotions, etc.
Sound
- High quality HRTF 3D-sound with clipping and partial wave tracing
- Occlusion, obstruction, different environments
- Complex lters emulated through software in case of abscent HW-support
- Context-relative multiple-mixed music streams in MP3/MP2/WMA/ADPCM/OGG Vorbis formats
Network
- Distributed computing
- Client Server based system
Tools
- In-house made tools (Level, Shader, Particle, Actor Editors)
- Plug-ins for popular modeling packages
- Short and simple pipeline from modeling packages to in-game action
AI
- Simulation Level-Of-Detail and Culting (2 AI models - high and low detail)
- Fiber based time distribution allows to built scalable AI without any slowdown
- Virtual sight, hearing and feeling
- Terrain reasoning with tactical assessment
- FSM with random factor
- Data driven desigh (pattern based evaluation functions are automatically generated and optimized on training examples - supervised learning)
|
Презентация 2004 года[10]
S.T.A.L.K.E.R. The Shadow Of Chernobyl
X-RAY DEVELOPMENT TOOLS
Graphics
- Fully supports DirectX 8 (Future support for DirectX 9)
- Real-time day/night cycling
- Real-time weather effects
Physics
- Rag-doll physics
- Materials: mass, penetration
- Complex objects
- Destructible objects
Artificial Intelligence
- Virtual hearing/sight
- Advanced Navigation (no waypoints)
- Group AI behavior
Sound
- Location-based environmental audio affected by surrounding conditions
- Supports 5.1 encoding and Dolby Digital, EAX support
Network
- Supports multiplayer up to 32 players over LAN or internet
- Support for creating additional game types
- Simple, convenient client/server architecture
- Optional day/night cycling for multiplayer
Tools
- Level Editor
- Actor Editor
- Particle Editor
- Shader Editor
- Scripting
Level Creation
- Leverages existing 3D Applications (3D Max, Maya, LightWave)
- No BSP - Level designers are free to create exciting and complex geometry - Polygonal collision
- Convenient and intuitive editor tools
Level Creation Steps
- Create geometry in 3D application
- Place static and dynamic objects
- Place static and dynamic light sources
- Place/generate detail objects
- Create sectors and portals
- Place static sounds and zones
- Place spawn elements
- AI map generation
- Render for draft or final (quality)
Leverages existing 3D Applications
- Level geometry and texturing is made through one of the packages – 3D Max, Maya or LightWave.
- Exporting into Level Editor.
Actor Editor
- Supports models, skeletons and animations from popular 3D Packages
- 3D Max, Maya, LightWave
- Automatic object collision generation
- Create custom generated objects of any complexity
Actor Editor Steps
- Create model in popular 3D package
- Create animation - Link skeleton - Export to actor editor
- Generate collision
- Adjust bone parameters
- Import animation, Adjusting animation parameters
- Replacement of shaders and textures (if necessary), export into the game
Particle Editor
- Designed for creating special effects
- Particle effects - Groups of effects - Simple but powerful script language
Shader Editor
- Create and modifying shaders
- Create and modifying materials
- Define sounds made by various impacts - Define level of penetration (piercing) - Define effects produced by various impacts - Define physics parameters - Define interaction with other materials
Scripting
- LUA
- Fast compilation and execution speed
- AI can be controlled through scripting
- Group AI
- Access to low level functions
- Character abilities: hearing, sight, navigation - Access to objects
- Scripted events (zones)
DirectX 9 Renderer
- Up to 3.000.000 per frame rendered in real time
- Fully real-time dynamic lighting
- Soft, physically correct shadows cast by every object
- Physical umbra/penumbra computations
- Frame buffer post-processing and complex filters
|
Видео
Интервью с разработчиками [12]
|
Основные особенности
- Lightmapping
- DirectX 9.0c[13]
- Deferred Shading
- Up to 3.000.000 polygons per frame[14]
- Dynamic Soft Ligthing
- Dynamic Soft Shadows
- Multiple Light Sources
- Detail Mapping
- Normal Mapping
- Specular Mapping
- Parallax Mapping
- Dynamic change of Day and Night
- Weather effects
- Wind
- Rain
- Lighting's
- Volumetric Fog
- Volumetric Heat Haze
- Retina Blur
- Light Blooming
Источники