Содержание
- Presets
- Entity System & Schematyc
- Animation Compression Details
- Overview
- Чем плох CryEngine?
- Crysis Mod SDK aka Cryengine 2
- Список программ, использующих CryEngine
- Release Highlights
- Particles
- ◆ PhysicsRopeFlags
- Templates
- Что представляет собой CryEngine?
- Particles
- ◆ SystemEvents
- CryEngine 3
- ◆ PhysicsEntityFlags
- Attribution
- Audio
- ◆ PhysicsParticleFlags
- Game registration
- ◆ EntitySlotFlags
Presets
The Resource Compiler supports different presets that specifies the options that should be applied when compiling an image asset. When starting the RC, it loads the main settings and presets from the main configuration file (rc.ini).
A preset file for image compilation (TIF to DDS) looks like this:
; diffuse colour textures without alpha channel pixelformat=BC1 pixelformat:es3=ETC2 rgbweights=ciexyz powof2=1 mipmaps=1 colorspace=sRGB,auto ;discardalpha=1 filemasks=*_diff* ; diffuse colour textures with alpha channel for alphablend pixelformat=BC7t pixelformat:es3=ETC2A rgbweights=ciexyz powof2=1 mipmaps=1 colorspace=sRGB,auto filemasks=*_diff*
Entity System & Schematyc
Schematyc
The new Entity Component system (that was introduced with CRYENGINE 5.3.0) has been adjusted in order to unify with the Schematyc setup. This means that any component exposed with the new 5.4.0 format (example below) will automatically become available in the Inspector and Schematyc so that Designers can build more complex logical entities.
The existing 5.3.0 method of creating components is still available, however we’ll be phasing it out over time as the new unified setup matures. Part of evolving the new setup will be to reduce the amount of code required to expose a component, so keep in mind that the example below will not be as rough in the future:
#include <CrySchematyc/CoreAPI.h> class CMyComponent final : public IEntityComponent { public: static CryGUID& IID() { static CryGUID id = "{AD383B41-C144-4F99-9A2B-0FA2D9D86245}"_cry_guid; return id; } void MyFunction() { // Print to the console CryLogAlways("Hello world!"); // Signals can only be sent when the component was attached through Schematyc if(Schematyc::IObject* pObject = m_pEntity->GetSchematycObject()) { // Send the signal back to Schematyc, along with our instance GUID pObject->ProcessSignal(SMySignal { m_bSignalResult }, GetGUID()); } } struct SMySignal { bool m_bReturnValue; }; bool m_bSignalResult = false; }; void ReflectType(Schematyc::CTypeDesc<CMyComponent>& desc) { desc.SetGUID(CMyComponent::IID()); desc.SetEditorCategory("MyCategory"); desc.SetLabel("MyComponent"); desc.SetDescription("Does awesome things!"); desc.SetComponentFlags({ IEntityComponent::EFlags::Socket, IEntityComponent::EFlags::Attach }); desc.AddMember(&CMyComponent::m_myMember, 'memb', "MyMember", "My Member", "A property that can be changed", 10); } static void ReflectType(Schematyc::CTypeDesc<CMyComponent::SMySignal>& desc) { desc.SetGUID("{DBBDB49C-6C48-446E-9451-DAA32E6FA240}"_cry_guid); desc.SetLabel("My Signal"); desc.AddMember(&CMyComponent::SMySignal::m_bReturnValue, 'ret', "ReturnVal", "Return Value", "Description", false); } static void RegisterMyComponent(Schematyc::IEnvRegistrar& registrar) { Schematyc::CEnvRegistrationScope scope = registrar.Scope(IEntity::GetEntityScopeGUID()); { Schematyc::CEnvRegistrationScope componentScope = scope.Register(SCHEMATYC_MAKE_ENV_COMPONENT(CMyComponent)); // Functions { auto pFunction = SCHEMATYC_MAKE_ENV_FUNCTION(&CMyComponent::MyFunction, "{FE5B34ED-A5DD-4C3B-A81C-38B5D980A770}"_cry_guid, "MyFunction"); pFunction->SetDescription("Triggers our test function"); componentScope.Register(pFunction); } // Signals componentScope.Register(SCHEMATYC_MAKE_ENV_SIGNAL(CMyComponent::SMySignal)); } } CRY_STATIC_AUTO_REGISTER_FUNCTION(&RegisterMyComponent);
Standard Components
The default entities introduced with CRYENGINE 5.3.0 are still part of the Engine, but are now considered deprecated and will be removed in a future Engine release. These entities are no longer available for creation in the Sandbox Editor, but existing instances will continue to work.
The new standard components can be used by Designers as well as Programmers using C++. For example, the updated 5.4 templates heavily utilize the new standard components in order to cut down on the amount of code required when getting started. The new components can be included with the path <DefaultComponents/…`>.
The components all reside in the Cry::DefaultComponents namespace.
Miscellaneous
- EntityGUID is now a proper 128-bit GUID. Parsing of legacy 64-bit GUIDs will still work, but convert on export.
- IEntity::Activate has been removed. Individual components can now return BIT64(ENTITY_EVENT_UPDATE) in GetEventMask and call UpdateComponentEventMask to trigger re-activation.
- IEntity::IsActive has been renamed to IsActivatedForUpdates.
- IEntityComponent functions PreInit, Initialize, OnShutDown, OnTransformChanged, ProcessEvent and Run are now protected and can thus not be called from outside the component itself.
Animation Compression Details
An animation source file is processed by the RC to output a compressed CAF file used by CRYENGINE. The compression involves the following steps:
Remove data in channels with no moves (same to the bind pose within the whole duration)
Remove some key-frames based on error thresholds
- Key-frames which can be interpolated with the given error threshold are removed.
- Each joint can have a custom error threshold.
Quantize quaternions
- A quaternion consists of 4 floats (128bit) normally. But for the normalized one, we can keep just 3 floats (96bit).
- There are three kinds of schemes for the quantization:
- 128bit (no compression),
- 48bit (15bit+15bit+15bit, and rest bits for indexing the omitted element),
- 64bit (20bit+21bit+21bit, and rest bits for indexing the omitted element).
- In the default setting, the 48-bit scheme is used for most cases.
- RC determines the most effective scheme under the given error threshold (the same one given in step 2).
- You can find more details in the ‘QuatQuantization.h’.
Create animation databases (optional)
During this multiple CAF files are combined into a single DBA file, all duplicate controllers get eliminated.
Overview
This document provides information on the Resource Compiler (often referred as «RC»). For most users, the RC is a tool that runs in the background.
However, it is often important to understand the reasons for why the RC exists, as well as the essential role it plays in game development with CRYENGINE.
CRYENGINE has the concept of source and target resources. Source resources are stored in a lossless format (without lossy compression) and can have asset-specific metadata, for example, the compression quality that should be used. These source assets are not used directly by the engine, but must be compiled to a platform-optimized format. In this process, the source data gets pre-processed and often compressed to reduce the memory requirements and speed up the loading process in the game. The target format can be different on individual platforms. PC and consoles have a different endianness and support different texture compression schemes. The source to target transformation (compilation) is done by the Resource Compiler (RC), which you can find in the RC sub-folder of the Tools folder.
One of the primary purposes of the RC is to compress textures by using the ResourceCompilerImage module. All source textures are stored in the lossless TIF format and get converted to the DDS format. The Export Textures with CryTIF — Photoshop page can be used to export a TIF file from Photoshop and open a dialog box where the meta data, like the desired compression scheme, can be chosen.
The Resource Compiler is invoked from the following tools:
- Sandbox when using LiveCreate or when loading TIF textures for which the DDS is missing.
- The CryTIFPlugin (Photoshop 6 and higher plugin).
- The CryENGINE Renderer (the r_RC_AutoInvoke console variable is set to 0 in full screen).
- The PolybumpPlugin (3ds Max plugin).
- The CryMaxExporter (3ds Max plugin).
- The CryMayaExporter (Maya plugin).
Чем плох CryEngine?
Есть у движка и недостатки. Так, многие разработчики отмечают трудности при работе с ним, возникающие из-за сложности сборки билда, наличия багов в редакторе, скромного выбора ассетов, ограничений для разработки сетевой игры, а также отсутствия хорошей техподдержки и активного комьюнити, в результате чего часто приходится решать проблемы методом проб и ошибок, не имея возможности посоветоваться с опытными коллегами.
При всей своей мощности, CryEngine довольно сложен в освоении, так что необходимо обладать обширными познаниями в области разработки, чтобы создавать с его помощью игры.
Crysis Mod SDK aka Cryengine 2
At Crytek, we believe in building a strong community for our games, franchises, and the engine as well. You can still make mods for Crysis as long as you purchase the original game(s) and use the ModSDK delivered with it. Please make sure you get your copy from a legal source and pay attention to the EULA when planning, making and distributing your mods. The following list holds some basic FAQs to help you with your creations.
What do I need to keep in mind when modding the original Crysis games?
Only use the officially distributed ModSDK, also referred to as ‘Cryengine 2’, and make sure to get it from a viable, secure source, for example, with the Crysis games from Steam or GOG. The Mod SDK provides an object code toolset to mod Crysis.
All mods are NOT allowed to be:
- Commercially distributed (that includes asking for any financial contribution/donation for accessing these mods/new creations)
- Operated without owning the Crysis base game
- Distributed without re-including the Mod SDK EULA and subsequent users being bound to it
For further reference to what is and is not allowed in Crysis modding, please check the EULA, README, and EULA installer of the original Crysis.
Where do I find the EULA and legal documents for Crysis modding?
You can find it in the original game files, or you can download it right here for reference:
- Crysis 1 — EULA Installer
- Crysis Original EULA
- Crysis Readme
Can I upload and distribute my mods on pages like ModDB?
Yes, you can, but please don’t forget to add a disclaimer to your representation or page, expressing that you aren’t associated with, endorsed by, or benefiting from the original IP holder and/or publishers of any Crysis game. It may read as follows:
“This site/project/content is not endorsed by or affiliated with Crytek or Electronic Arts. Trademarks are the property of their respective owners.
Game content copyright Crytek.»
Can I ask for donations or otherwise monetize my Mods?
No. Any contents created with any CRYENGINE version or product, including the Crysis Mod SDK are not to be monetized without previous written agreement by Crytek. If you are insecure if your project is in any kind of violation of our code of conduct, TOS, EULA, or license agreement, don’t hesitate to get in touch.
It is generally a good idea to let us know about your project! We love to endorse and help. You can use the Game Registration Form to register old and new mods alike. We will review your contributions and let you know if you’re all in the clear, and love helping you with visibility and feedback for your mods and games.
Список программ, использующих CryEngine
CryEngine
заглавие | публикация | разработчик | Издатель | Платформа |
---|---|---|---|---|
Aion | 25 ноя.2008 | NCSOFT | Gameforge 4D | Окна |
Большая разница | 23 марта 2004 г. | Crytek | Ubisoft | Окна |
CryEngine 2
заглавие | публикация | разработчик | Издатель | Платформа |
---|---|---|---|---|
Голубой Марс | 2 сен 2009 г. | Аватар Реальность | Аватар Реальность | Windows , iOS |
Crysis | 13 нояб.2007 г. | Crytek | Electronic Arts | Окна |
Crysis Warhead | 16 сен 2008 г. | Crytek Budapest | Electronic Arts | Окна |
Войны с наркотиками | 17 марта 2009 г. | Палео развлечения | Палео развлечения | Окна |
Энтропия Вселенная | 17 августа 2009 г. | MindArk | MindArk | Окна |
CryEngine 3
заглавие | публикация | разработчик | Издатель | Платформа |
---|---|---|---|---|
ArcheAge | 15 янв.2013 г. | XL Игры | Трион Миры | Окна |
ASTA | 2 марта 2016 г. | Игры с полигонами | Перемещение Игры | Окна |
Кабал 2 | 14 ноя.2012 | ESTsoft | ESTsoft | Окна |
Crysis | 4 октября 2011 г. | Crytek | Electronic Arts | PlayStation 3 , Xbox 360 |
Crysis 2 | 22 марта 2011 г. | Crytek , Crytek UK | Electronic Arts | Windows , PlayStation 3 , Xbox 360 |
кризис 3 | 19 февраля 2013 г. | Crytek , Crytek UK | Electronic Arts | Windows , PlayStation 3 , Xbox 360 |
Система обучения спешенного солдата | 2012 г. | Разумные решения | ||
Фронт врага | 10 июня 2014 г. | CI игры | CI игры | Windows , PlayStation 3 , Xbox 360 |
Lichdom: Battlemage | 26 августа 2014 г. | Xaviant | Xaviant (Windows) , Максимум игр (PlayStation 4, Xbox One) | Windows , PlayStation 4 , Xbox One |
MechWarrior Online | 17 сен 2013 | Игры Пиранья | Игры Пиранья | Окна |
Nexuiz (2012) | 3 мая 2012 г. | IllFonic | THQ | Windows , Xbox 360 |
Панзар | 12 апреля 2013 г. | Панзар Студия | Панзар Студия | Окна |
Демо Ruby tech | 2013 | AMD | ||
Снайпер: Призрачный воин 2 | 12 марта 2013 г. | Город Интерактивный | Город Интерактивный | Windows , PlayStation 3 , Xbox 360 |
Состояние распада | 5 июня 2013 г. | Лаборатория нежити | Microsoft Studios | Windows , Xbox 360 , Xbox One |
Система городской жизни | 2010 г. | Enodo | ||
Warface | 21 октября 2013 г. | Crytek Kiev , Crytek UK (Xbox 360) | Crytek , Microsoft Studios (Xbox 360) | Windows , Xbox 360 , PlayStation 4 , Xbox One |
CryEngine (4-е поколение)
заглавие | публикация | разработчик | Издатель | Платформа |
---|---|---|---|---|
Арена судьбы | Задавать | Crytek Черное море | Crytek | Windows , PlayStation 4 , Xbox One |
Бронированная война | 8 октября 2015 г. | Обсидиан Развлечения | Обсидиан Развлечения | Окна |
Боевой клич | Задавать | Battlecry Studios | Bethesda Softworks | Окна |
Все ушли в восторг | 11 августа 2015 г. | Китайская комната SCE Santa Monica Studio | Sony Computer Entertainment | Windows , PlayStation 4 |
Эволюционировать | 10 февраля 2015 г. | Turtle Rock Studios | 2K Игры | Windows , PlayStation 4 , Xbox One |
Homefront: революция | 17 мая 2016 | Студии Deep Silver Dambuster | Глубокое серебро | Windows , PlayStation 4 , Xbox One , Linux |
Kingdom Come: Deliverance | 13 февраля 2018 г. | Warhorse Studios | Warhorse Studios | Windows , PlayStation 4 , Xbox One |
Восхождение сына Рима | 22 нояб.2013 г. | Crytek Франкфурт | Microsoft Studios | Windows , Xbox One |
Добыча | 5 мая 2017 | Arcane Studios | Bethesda Softworks | Windows , PlayStation 4 , Xbox One |
Снайпер Призрачный Воин 3 | 25 апреля 2017 | CI игры | CI игры | Windows , PlayStation 4 , Xbox One |
Коллекционные предметы | 19 марта 2014 г. | Crytek Франкфурт | DeNA | iOS , Android |
Подъем | 28 апреля 2016 г. | Crytek | Crytek | Windows, Oculus Home |
CryEngine V
заглавие | публикация | разработчик | Издатель | Платформа |
---|---|---|---|---|
Охота: вскрытие | 22 февраля 2018 г. | Crytek | Crytek | Windows , PlayStation 4 , Xbox One |
Crysis Remastered | 18 сентября 2020 г. | Crytek | Crytek | Windows , PlayStation 4 , Xbox One |
Release Highlights
CRYENGINE 5.1.1 brings fixes and improvements to the way users navigate the Sandbox Editor. With this release expect more efficient menus, smoother camera movement and much more!
Editor Console Help Menu: Users will now see a «Help» menu in the Console plug-in with «Console Variables» and «Console Commands» menu items.
More Camera Movement Options in the Sandbox Editor: More camera movement options have been added in Editor mode. These are located with the other options (standard UI toggles) in the Camera drop-down menu above the main Viewport.
- Speed Height-Relative: (new option) When enabled, adjusts the speed of camera movement based on the height of the camera above terrain or objects. The camera speed is multiplied by the height in meters (clamped to a range of 1-1000). Allows for precise movement when close to the ground, or to quickly move to different parts of a Level without the need to constantly adjust the camera Speed slider.
- Terrain Collision: (existing option) Camera collision with the terrain when moving.
- Object Collision: (new option) Camera collision with physicalized objects when moving — the camera will slide along the physics proxy, but without penetrating. This option also affects the Speed Height-Relative: when set to on; camera height is measured above terrain or objects. When set to off; camera height is measured above terrain only.
Terrain Editor Cleanup: Improvements to Terrain Tool usability. «View» has been removed from the Tools Menu — the top down view wasn’t working as expected. In the future this will be configured to work as a standard «Top» view. The “Copy” and “Move” buttons have been fixed and the UI has been changed — there is now a checkbox «Move objects» — this does exactly what you’d expect and an “Undo” operation has also been implemented.
Optimized Viewport Resolution Control: Previously, Viewports with custom resolutions could only have their contents stretched to the edges of the window to preserve aspect ratio. Now when setting a custom resolution for a Viewport widget some new options are available that allow users to position the contents of the game in the Viewport, but without stretching.
Particles
- New: Added effect param ForceDynamicBounds for effects with too-large static bounds. Added CVar e_ParticlesMinPhysicsDynamicBounds to select which physics modes force dynamic bounds.
- New: (GPU Fluids) Added CVar to enable/disable debug information about GPU Fluid Particle Simulation.
- Refactored: ParamMod.GetValues and GetValueRange can compute individual values or min-max ranges for any domain. Replaced and extended similar functions.
- Fixed: IntegralDragFast avoids blowing up by computing max drag factor and scaling the individual drag values.
- Fixed: Moved assign effect to CParticleEffectObject — both drag-n-drop from Particle Editor and from the Create Object panel work the same way.
- Fixed: Audio and Force generation no longer exclusive.
- Fixed: (GPU Fluids) Bring Fluid Dynamics component to a usable state by fixing the pipeline, tweaking default values and making particle influence adjustable.
◆ PhysicsRopeFlags
|
strong |
Physicalization flags specifically for Rope-entities
Enumerator | |
---|---|
None |
No flags |
FindiffAttachedVel |
Approximate velocity of the parent object as v = (pos1-pos0)/time_interval. |
NoSolver |
No velocity solver; will rely on stiffness (if set) and positional length enforcement. |
IgnoreAttachments |
No collisions with objects the rope is attached to. |
TargetVtxRel0 |
Whether target vertices are set in the parent entity’s frame. |
TargetVtxRel1 |
Whether target vertices are set in the parent entity’s frame. |
SubdivideSegs |
Turns on ‘dynamic subdivision’ mode (only in this mode contacts in a strained state are handled correctly). |
NoTears |
Rope will not tear when it reaches its force limit, but stretch. |
Collides |
Rope will collide with objects other than the terrain. |
CollidesWithTerrain |
Rope will collide with the terrain. |
CollidesWithAttachment |
Rope will collide with the objects it’s attached to even if the other collision flags are not set. |
NoStiffnessWhenColliding |
Rope will use stiffness 0 if it has contacts. |
Templates
The templates have been refactored to require much less code for the same end result. New systems have also been introduced, which have allowed us to remove dependencies on legacy systems:
- Replaced IGameObject and IGameObjectExtension usage — Now using the new IEntityComponent system directly.
- Removed large blocks of duplicated code across templates — Now using the new Standard Components in order to simplify the creation of basic gameplay.
- Replaced IGameRules and IActor — Now using INetworkedClientListener (see below for more information) and IEntityComponent directly. Games no longer need to utilize the legacy actor system to support players.
Что представляет собой CryEngine?
Движок CryEngine был разработан немецкой студией Crytek для шутера Far Cry, который вышел в 2004 году и оказал огромное влияние на развитие игр с открытым миром. Проект позволял перемещаться по огромной территории без подзагрузок, поощрял свободный подход к выполнению миссий, а также демонстрировал потрясающую графику.
Вскоре после выхода Far Cry все права на CryEngine были выкуплены компанией Ubisoft, которая использовала движок для нескольких аддонов к шутеру. Также он лег в основу движка Dunia Engine, на котором были разработаны все последующие части серии Far Cry, и был лицензирован компанией NCSoft для MMORPG Aion: The Tower of Eternity.
Crytek тем временем занялась созданием движка CryEngine 2, на котором и был разработан знаменитый Crysis (а также аддоны Crysis Warhead и Crysis Wars). Дальнейшие итерации – CryEngine 3 (сейчас принадлежит Amazon), CryEngine (4), CryEngine V – являются закономерным развитием CryEngine 2. Впрочем, начиная с 2013 года, присвоение версиям движка порядковых номеров считается условным, так как сама Crytek предпочитает именовать его CryEngine, без каких-либо цифр.
Игры на движке CryEngine разрабатываются не только студией, создавшей его. Изначально его могли лицензировать сторонние компании за фиксированную плату, а образовательные учреждения могли использовать его бесплатно, но на некоммерческой основе – только для обучения студентов. Но начиная с 2016 года движок и SDK (набор средств разработки) распространяются бесплатно для всех желающих, но с условием выплаты Crytek 5% прибыли при доходах, превышающих 5000 долларов/евро (начиная с версии 5.5, на более ранних версиях роялти не выплачивается).
Particles
- New: Added effect param ForceDynamicBounds for effects with too-large static bounds. Added CVar e_ParticlesMinPhysicsDynamicBounds to select which physics modes force dynamic bounds.
- New: (GPU Fluids) Added CVar to enable/disable debug information about GPU Fluid Particle Simulation.
- Refactored: ParamMod.GetValues and GetValueRange can compute individual values or min-max ranges for any domain. Replaced and extended similar functions.
- Fixed: IntegralDragFast avoids blowing up by computing max drag factor and scaling the individual drag values.
- Fixed: Moved assign effect to CParticleEffectObject — both drag-n-drop from Particle Editor and from the Create Object panel work the same way.
- Fixed: Audio and Force generation no longer exclusive.
- Fixed: (GPU Fluids) Bring Fluid Dynamics component to a usable state by fixing the pipeline, tweaking default values and making particle influence adjustable.
◆ SystemEvents
|
strong |
Flags to define which events to receive on a RequestListener.
Enumerator | |
---|---|
None |
The default value of SystemEvents. This means no events will be received. |
ImplSet |
Receive events when the audio implementation is set. |
TriggerExecuted |
Receive events when a trigger is executed. |
TriggerFinished |
Receive events when a trigger has finished. |
FilePlay |
Receive events when a file is played. |
FileStarted |
Receive events when a file has started playing. |
FileStopped |
Receive events when a file has stopped playing. |
All |
If the event flags for are set to All, all events generated by the given object will be received. |
CryEngine 3
27 марта 2009 года на GDC 2009 Crytek представила CryEngine 3 . CryEngine 3 работает вместе с ПК на консолях Xbox 360 и PlayStation 3 . Он также работает на Wii U , Xbox One и PlayStation 4 . Согласно Crytek, песочница движка позволяет работать на всех трех платформах одновременно. При достаточной вычислительной мощности возможен даже вывод 3D (по принципу смещения от центра) в формате цифрового кино 4K . Бесплатная версия CryEngine 3 доступна с 18 августа 2011 года. Для коммерческих проектов требуется дополнительная лицензия.
CryEngine 3 изначально поддерживал только DirectX 9.0c. Благодаря патчу, который был выпущен впоследствии, в настоящее время также поддерживается DirectX 11, что заметно влияет на качество вывода графики. На GDC 2014 Crytek объявила в сотрудничестве с AMD, что будет поддерживать их альтернативу Direct3D AMD Mantle . Помимо прочего, это должно значительно повысить качество рендеринга. Техническая демонстрация фигуры Ruby, созданная AMD, также будет опираться на CryEngine.
На Gamescom 18 августа 2011 года был выпущен бесплатный SDK , который должен быть разработан с использованием некоммерческих игр.
◆ PhysicsEntityFlags
|
strong |
General flags for PhysicsEntity-parameters
Enumerator | |
---|---|
None |
No flags |
TraceableParts |
Each entity part will be registered separately in the entity grid |
Disabled |
Entity will not be simulated |
NeverBreak |
Entity will not break or deform other objects |
Deforming |
Entity undergoes dynamic breaking/deforming |
PushableByPlayers |
Entity can be pushed by players |
Traceable |
Entity is registered in the entity grid |
ParticleTraceable |
Entity is registered in the entity grid |
RopeTraceable |
Entity is registered in the entity grid |
Update |
Only entities with this flag are updated if ent_flagged_only is used in TimeStep() |
MonitorStateChanges |
Generate immediate events for simulation class changed (typically rigid bodies falling asleep) |
MonitorCollisions |
Generate immediate events for collisions |
MonitorEnvChanges |
Generate immediate events when something breaks nearby |
NeverAffectTriggers |
Don’t generate events when moving through triggers |
Invisible |
Will apply certain optimizations for invisible entities |
IgnoreOcean |
Entity will ignore global water area |
FixedDamping |
Entity will force its damping onto the entire group |
MonitorPoststep |
Entity will generate immediate post step events |
AlwaysNotifyOnDeletion |
When deleted, entity will awake objects around it even if it’s not referenced (has refcount = 0) |
OverrideImpulseScale |
Entity will ignore breakImpulseScale in PhysVars |
PlayersCanBreak |
Players can break the Entiy by bumping into it |
CannotSquashPlayers |
Entity will never trigger ‘squashed’ state when colliding with players |
IgnoreAreas |
Entity will ignore phys areas (gravity and water) |
LogStateChanges |
Entity will log simulation class change events |
LogCollisions |
Entity will log collision events |
LogEnvChanges |
Entity will log EventPhysEnvChange when something breaks nearby |
LogPoststep |
Entity will log EventPhysPostStep events |
Attribution
All projects developed with CRYENGINE must include our logo and credit line as per our license agreement. The logo and credit line must also be visible in all major marketing materials, like the website and release trailer.
- Logo: The CRYENGINE logo needs to be present in the project launch title, packaging, major marketing material and website. It needs to be displayed no less prominently as other third-party partner logos.
- Credit line: The following copyright message should be included in the final game, any demos, and trailers: «Portions of this software are included under license 2004-2020 Crytek GmbH. All rights reserved.»
- Animated bumper: The animated bumper should be displayed when the project executable is launched, and at the beginning of any marketing trailers.
- If you publish your game on Steam or other publishing platforms, mention that CRYENGINE is the engine/technology it was developed with.
Audio
Audio General
- New: Functionality to calculate the duration of a standalone audio file.
- New: Remove inheritance in Audio Object.
- Optimized: Small tweaks/fixes to the SDL impl.
- Optimized: Optimized setting of FMOD Studio buses to be more efficient.
- Fixed: Where FMOD Studio reverbs stopped decay procedure when the source event was stopped.
- Fixed: Where sometimes environments were not properly set to FMOD Studio.
- Fixed: Crash with overly busy audio debug drawing.
- Fixed: CVar was unregistered with an outdated name.
- Fixed: Parent ambiences not assuming reverbs of inner areas.
- Fixed: Audio trigger names were not being serialized and shown in the UI of Mannequin.
- Tweaked: Updated SDL_mixer to version 2.0.1 and enabled SDL_mixer implementation to play back Vorbis encoded mp3 files.
- Tweaked: Updated FMOD Studio API to version 1.08.02.
ACE (Audio Controls Editor)
- Fixed: Middleware icons missing when using the web launcher.
- Fixed: Some placeholder wwise controls were being shown even though they were a placeholder.
- Fixed: Crash when switching audio middlewares.
- Fixed: Crash when connecting implementation controls that live inside folders directly to the ATL controls panel.
- Fixed: Filtering buttons.
DRS (Dynamic Response System)
- New: Added an Execution-limit condition (to enable execute-only-once again).
- New: Added an «execute response» action to allow re-using of responses.
- New: Added a «done» port for the send-signal Flowgraph node — which is triggered when the response linked to the signal has finished.
- New: Added a listener interface for drs-signal-processing.
- New: Added a TimeSinceResponse Condition.
- Refactored: Removed the option to queue drs signals delayed (can be achieved with ‘wait’ actions).
- Fixed: A bug when playing dialog lines without audio and without animation.
- Fixed: Subtitle was not displayed for lines without audio trigger, but with talk-animation.
- Tweaked: Only increment the execution-counter on responses when at least the base-condition was met.
◆ PhysicsParticleFlags
|
strong |
Physicalization flags specifically for Particle-entities.
In here all the enums from physinterface.h are wrapped and commented so they can be used in C#. For easier usage the enums are split up in multiple enums so the wrong enum can’t be used for the wrong parameter.
Enumerator | |
---|---|
None |
No flags |
SingleContact |
Full stop after first contact. |
ConstantOrientation |
Forces constant orientation. |
NoRoll |
‘sliding’ mode; entity’s ‘normal’ vector axis will be alinged with the ground normal. |
NoPathAlignment |
Unless set, entity’s y axis will be aligned along the movement trajectory. |
ParticleNoSpin |
Disables spinning while flying. |
NoSelfCollisions |
Disables collisions with other particles. |
NoImpulse |
Particle will not add hit impulse (expecting that some other system will). |
Game registration
Your game needs to be registered with Crytek regardless of whether you want to monetize it or not. Please fill out the Game registration form and provide information about your project, including:
- Your full, legal name.
- Your email address.
- The name of your project/game.
- Additional information about your game, its status, and the engine version used.
If a licensee plans to exploit a game commercially, the licensee shall give notice to Crytek three months prior to the approximate commercial release date of that game via our Game registration form.
Crytek, at its sole discretion, may promote a licensee’s game via Crytek’s websites and/or social media channels subject to the Licensee’s approval of such promotion. You can opt-in to marketing support when you register your game. Only registered games that abide by the license agreement can opt-in for marketing support.
◆ EntitySlotFlags
|
strong |
Flags the can be set on each of the entity object slots.
Enumerator | |
---|---|
Render |
Draw this slot. |
RenderNearest |
Draw this slot as nearest. . |
RenderWithCustomCamera |
Draw this slot using custom camera passed as a Public ShaderParameter to the entity. |
IgnorePhysics |
This slot will ignore physics events sent to it. |
BreakAsEntity |
Indicates this slot is part of an entity that has broken up. |
RenderAfterPostProcessing |
Draw this slot after post processing. |
BreakAsEntityMP |
In MP this is an entity that shouldn’t fade or participate in network breakage. |
CastShadow |
Draw shadows for this slot. |
IgnoreVisAreas |
This slot ignores vis areas. |
GIModeBit0 |
Bit one of the GI Mode. |
GIModeBit1 |
Bit two of the GI Mode. |
GIModeBit2 |
Bit three of the GI Mode. |

Эта тема закрыта для публикации ответов.