Cryengine 3.8.6 для windows
Содержание:
- Чем плох CryEngine?
- ◆ EntitySlotFlags
- Game registration
- ◆ IconType
- Техническая демонстрация CryEngine 5.6 дразнит отсылками к Crysis
- История разработки и поддержки[править | править код]
- Плюсы и минусы
- My First Level
- Known Issues
- Key Binds
- Contact
- Состав и лицензионная политика
- Animation Compression Details
- ◆ PhysicsParticleFlags
- Crysis Mod SDK aka Cryengine 2
- Attribution
- Presets
- Gettting Started
- ◆ PhysicsRopeFlags
- Common Animation Related Usage
- Plug-In Tutorials
- Time to Get to Work!
- ◆ SystemEvents
- ◆ DynamicLightFlags
- ◆ PhysicsEntityFlags
Чем плох CryEngine?
Есть у движка и недостатки. Так, многие разработчики отмечают трудности при работе с ним, возникающие из-за сложности сборки билда, наличия багов в редакторе, скромного выбора ассетов, ограничений для разработки сетевой игры, а также отсутствия хорошей техподдержки и активного комьюнити, в результате чего часто приходится решать проблемы методом проб и ошибок, не имея возможности посоветоваться с опытными коллегами.
При всей своей мощности, CryEngine довольно сложен в освоении, так что необходимо обладать обширными познаниями в области разработки, чтобы создавать с его помощью игры.
◆ 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. |
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.
◆ IconType
|
strong |
Enumerator | |
---|---|
None | |
AnimObject | |
AreaTrigger | |
AudioAreaAmbience | |
AudioAreaEntity | |
AudioAreaRandom | |
Bird | |
Bug | |
Camera | |
Character | |
Checkpoint | |
ClipVolume | |
Clock | |
Clouds | |
Comment | |
DeadBody | |
Death | |
Decal | |
Dialog | |
Door | |
Elevator | |
EntityContainer | |
EnvironmentProbe | |
Explosion | |
Fish | |
Flash | |
FlowGraphEntity | |
Fog | |
FogVolume | |
ForbiddenArea | |
GravitySphere | |
Hazard | |
Health | |
Item | |
Ladder | |
Ledge | |
Letter_T | |
Letter_W | |
Light | |
Lightning | |
LightPropagationVolume | |
Magnet | |
Mine | |
MultiTrigger | |
ODD | |
Particles | |
PhysicsObject | |
PrecacheCamera | |
Prefab | |
PrefabBuilding | |
ProceduralBuilding | |
ProceduralObject | |
Prompt | |
ProximityTrigger | |
River | |
Road | |
Rope | |
Savepoint | |
Schematyc | |
Seed | |
Sequence | |
Shake | |
SmartObject | |
Sound | |
SpawnGroup | |
SpawnPoint | |
Spectator | |
Switch | |
TagPoint | |
Territory | |
Tornado | |
Trigger | |
User | |
Vehicle | |
Voxel | |
VVV_Area | |
Water | |
Wave |
Техническая демонстрация CryEngine 5.6 дразнит отсылками к Crysis
Прошло много времени с тех пор, как Crysis «плавил» компьютеры, впечатляя красотой и реалистичностью происходящего на экране. На подходе консоли следующего поколения, и не пришло ли время сделать это снова? Выпущенная Crytek техническая демонстрация новой версии CryEngine 5.6 не только вызывает интерес, но и делает очевидные отсылки к славным временам Crysis.
Видео начинается, как и следует ожидать, с графических достоинств недавно выпущенного сетевого боевика Hunt: Showdown от Crytek. Во всей красе демонстрируются объёмный туман в реальном времени, полностью динамическое и глобальное освещение в реальном времени, физика верёвок, цепей, тканей и изгибающейся от прикосновений растительности, региональное размытие в движении с учётом перемещения отдельных объектов, а не всего кадра, глубина резкости, аккуратное совмещение объектов и объёмные лучи.
The Land of Pain
Затем камера проходит через серию порталов, которые уже отдают дань прежним играм Crytek. Динамическое региональное освещение внутри помещений демонстрирует и объёмный свет, и его отражения от поверхностей, реалистичные мягкие тени — в общем, те аспекты, которые сегодня, как правило, улучшает трассировка лучей, хотя данная технология здесь не задействована. Впрочем, Crytek уже демонстрировала свои достижения в этой области, причём на видеокарте Radeon Vega 56.
Следующий портал ведёт в зону в духе античного мира Ryse: Son of Rome. Наконец, на отметке 2:15 зрителя отправляют в великолепные джунгли — и окружение, и музыкальное сопровождение очень напоминают Crysis и его саундтрек.
В видео есть и другие моменты, делающие отсылки к знаменитому шутеру: в начале, когда демонстрируется пользовательский интерфейс, путь файла включает пользователя prophet — это имя одного из центральных персонажей серии Crysis, Пророка. К тому же дважды звучащее в ролике название CryEngine тоже озвучено голосом, похожим на Пророка, а во втором случае сопровождается знакомым звуком трансформации защитных свойств костюма.
Конечно, всё это не могло остаться без внимания поклонников Crysis, которые пытаются найти ответы, что же эти довольно очевидные отсылки значат? Может быть, Crytek готовит обновлённое издание старых игр на новом движке или делает намёки на разработку новой игры в серии?
Aporia: Beyond the Valley
Но всё это кажется маловероятным сегодня, учитывая обстоятельства, в которые поставлена студия. Последняя игра в серии, Crysis 3, вышедшая в далёком 2013 году, не оправдала ожиданий издателя и владельца интеллектуальных прав Electronic Arts, да и у разработчика в лице Crytek последние годы были непростыми.
Prey
На уточняющий вопрос глава пресс-службы Crytek Йенс Шефер (Jens Schäfer) ответил сухо: «Это чистая технологическая демонстрация CryEngine». Что ж… когда-нибудь?
Everybody’s Gone to the Rapture
CryEngine 5.6 уже доступен разработчикам на официальном сайте и через панель управления движком. Поддерживаются платформы ПК, Xbox One, PlayStation 4 и Oculus Rift. Последняя версия вносит более тысячи улучшений и включает проверенные на практике функции, использованные в Hunt: Showdown.
Sniper Ghost Warrior 3
Лицензионная политика предусматривает 5 % отчисления от продаж продуктов, созданных на базе этого движка, и не требует никаких единоразовых платежей. При этом Crytek предоставляет полный исходный код своей мощной платформы для разработки игр.
История разработки и поддержки[править | править код]
Первые сведения о бесплатной версии CryEngine 3 SDK появились в марте 2010 года, когда Карл Джонс (англ. Carl Jones), директор по бизнес-развитию в Crytek, выступая на India Game Developer Summit 2010, сообщил о версии CryEngine 3 для независимых разработчиков с пониженной ценой, а также о полностью бесплатной версии движка. Подробности не уточнялись.
15 марта 2011 года британский ресурс Develop опубликовал большое интервью с Авни Ерли (англ. Anvi Yerli), одним из сооснователей и руководителей Crytek. В этом интервью Ерли заявил, что CryEngine 3 SDK станет конкурентом Unreal Development Kit, который предлагает приблизительно аналогичную функциональность для движка Unreal Engine 3 и продвигается компанией Epic Games.
Во второй половине апреля 2011 года Джеват Ерли в письме сообществу сайта CryMod.com официально сообщил, что CryEngine 3 SDK будет выпущен в августе 2011 года.
17 августа 2011 года состоялся официальный выпуск CryEngine 3 SDK. Карл Джонс так прокомментировал выпуск SDK: «С выходом нашего SDK мы призываем создателей игр попробовать CryEngine 3, и я надеюсь, что это приведёт к созданию новых компаний, использующих наш движок
Что ещё более важно, мы рассчитываем увеличить количество талантливых разработчиков на CryEngine 3 и повысить уровень нашего интернет-сообщества пользователей. Этот SDK содержит больше инструментов, чем мы когда-либо выпускали ранее — он даёт людям возможность создавать совершенно новые игры с нуля, а не заниматься моддингом существующих игр от Crytek, и потому мы призываем всех заинтересованных и инди-разработчиков попробовать его»
Одновременно с выпуском данного продукта сайт CryMod.com, запущенный в 2003 году и предназначенный для развития и поддержки моддинга всех игр от Crytek, был переименован на CryDev.net, что отражает изменение его направленности: с выходом CryEngine 3 SDK он стал также главным интернет-порталом по поддержке пользователей данного SDK, а не только модостроителей к существующим играм. На следующий день, 18 августа, количество скачиваний данного средства разработки превысило 20 000 раз. Выпуск CryEngine 3 SDK был замечен и освещён IT- и игровой прессой, многие журналисты сравнивали SDK от Crytek со своим ближайшим и сильнейшим конкурентом — Unreal Development Kit.
22 августа, через 5 дней после выпуска CryEngine 3 SDK, Crytek сообщила, что его количество зарегистрированных загрузок превысило 100 000 раз. Таким образом, CryEngine 3 SDK стал лидером по скорости скачивания среди всех бесплатных редакций SDK игровых движков, обогнав Unreal Development Kit (50 000 загрузок в первую неделю) и Unity (20 000 загрузок в первые две недели).
2 сентября 2011 года количество скачиваний CryEngine 3 SDK превысило 300 000 раз. Авни Ерли сообщил сайту Develop, что источники загрузок SDK равномерно распределены по США, Европе и Азии.
28 сентября 2011 года количество скачиваний достигло отметки в 450 000 раз. Авни Йерли, комментируя эту новость, сообщил, что компания получила множество запросов на лицензирование CryEngine 3 SDK, причем не только от игровых разработчиков, но и от компаний, не связанных с игровой индустрией. Кроме этого, он также выразил надежду, что CryEngine 3 SDK поможет реализовать свои задумки независимым разработчикам.
17 октября 2011 года вышло первое обновление для CryEngine 3 SDK, которое содержало обновленный до версии 3.3.6 движок CryEngine 3 и билд самого SDK под номером 2572. Основным нововведением стало появление ранее обещанной поддержки коллективного создания модификаций — была создана онлайновая база данных модов, репозиторий, который позволяет разработчикам организовывать и координировать коллективные проекты. Также в новой версии SDK был улучшен процесс загрузки уровней, внесены изменения в систему частиц и игровой ИИ. Помимо этого, обновление исправляло множество ошибок, содержало подстройки многих параметров и незначительные улучшения функционала. Примерно в одно время с выходом данного обновления количество скачиваний CryEngine 3 SDK достигло пол-миллиона.
21 октября 2011 года вышла новая версия CryEngine 3 SDK, в которой движок CryEngine 3 был обновлен до версии 3.3.7.
13 апреля 2012 года вышла новая версия (3.4.0) CryEngine 3 SDK поддерживающая DirectX 11
Плюсы и минусы
CryENGINE 3 пользуется среди разработчиков игр огромной популярностью, что обусловлено рядом его преимуществ:
- Для создания качественных игр не требуется никакого стороннего программного обеспечения. Все необходимые инструменты предусмотрены в CryENGINE 3.
- Использование передовых графических технологий.
- Движок поддерживает не только персональные компьютеры, но и платформы Playstation, Xbox.
- В случае пропажи интернет-соединения, сохранить результат работы можно в редакторе.
- Удобный интерфейс.
- Функция сжатия анимации позволяет сократить использование оперативной памяти до 90 процентов.
- Реалистичная физика.
- Возможность зарабатывать на платном распространении своих проектов.
- Нет необходимости в проведении инсталляции. Чтобы начать работу с платформой, достаточно распаковать архив и запустить редактор уровней.
- Широкий функционал.
- Наличие эффективного 3D стереоскопического решения.
- Исключительное качество графики, приближенное к реальным съемкам.
- Платформа идет в ногу со временем, пользователи могут оптимизировать свои проекты под GPU-рендеринг, а также внедрять поддержку DirectX
- Приложение поддерживает инверсную кинематику.
- Движок оснащен передовым искусственным интеллектом.
- Совместимость с популярными графическими редакторами. Из них можно импортировать в приложение модели и текстуры.
- Множество положительных отзывов со стороны профессиональных разработчиков.
Недостатки:
- В программе предусмотрен лишь англоязычный интерфейс.
- Отсутствие нормальной технической поддержки, из-за чего пользователям придется справляться со всеми трудностями самостоятельно.
- Сложный процесс сборки билда и отсутствие кнопки “build”.
- Множество багов как на сервере, так и в самом редакторе.
My First Level
Chrysalis has some code features which are specific to a long-term goal I have, though most of these will not affect you. One that does affect everyone is the way you play test a level.
Most CRYENGINE games are designed with a player who is also the actor, and that player is spawned into the game as an actor when you connect to the game.
I have worked hard to refactor the code so that the concept of player and actor / character are now completely separate. Code relating to the player is kept to a minimum, in particular:
- camera management
- input management
All the other code is split off into an actor class. Actors can have lifespans totally indepedant of the player. A player is able to ‘attach’ themselves to an actor, the camera and input are then directed to that actor — who acts accordingly.
While I expect to add some code in the near future to handle spawning a new actor when the player enters game mode, for now, it does not.
When you first create a level, be sure to add a new ‘Character’ entity to that level. Name that entity ‘Hero’, and run a console command to attach the player camera and input to that character:
This will set up the player to attach to the ‘Hero’ character — something that is done automatically when the level is loaded.
You will not be able to enter game mode to test a level without at least one character in the level, and attaching the player to that character.
I will sort out something more convenient in time, as I get close to making a release of this code.
Known Issues
- Loading the test_all map in game mode may not work until after you have loaded it in the Sandbox and exported the level.
- Animations may not work correctly until after they have been loaded once in the Sandbox. They need to be compressed by the engine.
- You may need to generate all the metadata again, particularly if you find that some assets are not loading, like the character definitions or the animations. If so, right click on Chrysalis.cryproject in the Windows Explorer and choose ‘Generate / Repair metadata’.
- Some warnings / errors on loading a level — safe to ignore
- Switching models between first and third person modes doesn’t presently work.
- Interaction with entities is not working yet.
- Keybinds are hard-coded and will remain so until a replacement for the keybind XML file is available.
- Actor animations do not have any transitions as yet, and so rotations will look bad for a while.
- Crouch animations are from the Motus Mobililty Basic / Pro pack, and as such I cannot distribute them. I have built a blendspace for movement while crouching, but it won’t be functional unless you buy the appropriate pack of animations and import them into the project. Place them in the assets/objects/characters/human/male/animations/crouch/ folder, making sure to follow the general naming conventions.
- The CryCamera asserts the first time you switch from first person view to third person view. It can be safely ignored for now.
- Motus character does not have a physics proxy body yet. That will need to be added at some time to allow detection of hits to body parts.
Key Binds
- WASD
- mouse wheel to zoom in and out on the ActionRPG camera
- left click to interact — code is in flux so it may do weird random things — beware, it’s buggy so it can get locked up as well
- F — interact — same as left mostly
- C — crouch
- H — crawl — no animations yet
- V — kneel — no animations yet
- B — sit — no animations yet
- F M X — use, drop and toss items
- 0 — 9 — action bar keys — these will activate actions for interactive items. There is no UI yet to show which things will happen if you press these keys…just try hitting 1-4 and see if anything happens.
- J K L — inspection start, inspect, and inspection end. May not currently work.
- PageUp, PageDn, Left, Right, Up, Down — to help debug the camera, these offset the camera by a small amount with each press.
Contact
If you want to contact me, you can often find me on the CRYENGINE community Slack channel under the name ‘Ivan Hawkes’.
If you have any questions about the code, please take the time to try and find the answer within the code before contacting me for help. General questions about C++ or CRYENGINE should be directed to Google, Slack, the CRYENGINE Forums or online discussions groups for that topic.
Состав и лицензионная политика
Системные требования CryEngine 3 SDK | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
CryEngine 3 SDK базируется на игровом движке CryEngine 3 и содержит все компоненты последнего наряду со средствами разработки, включая редактор уровней Sandbox третьей версии.
CryEngine 3 SDK содержит множество дополнительных инструментов, включая исходный код игровых ассетов на C++, экспортеры контента, примеры скриптов, механизм Flowgraph и проч. Вместе с тем, графическая компонента CryEngine 3, вошедшая в первую версию CryEngine 3 SDK, поддерживает лишь DirectX 9; добавление поддержки DirectX 11 заявлено разработчиками в последующих выпусках. В составе CryEngine 3 SDK присутствуют 32-битная и 64-битная версии инструментов.
В первом выпуске CryEngine 3 SDK доступ к редактированию уровней имеет лишь их создатель; он не может открыть доступ на редактирование другим пользователям. В последующих версиях заявлено внедрение новой системы управления доступом к уровням, которая позволит создавать коллективные проекты, регулировать уровень доступа участников этих проектов к уровням и т. д.
Лицензия CryEngine 3 SDK позволяет бесплатно использовать его для создания и распространения некоммерческих игр. В случае, если разработчик желает использовать CryEngine 3 SDK в коммерческих целях, он должен отчислять компании Crytek 20 % от продаж своих игр, разработанных с использованием данного SDK.
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.
◆ 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). |
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.
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.
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*
Gettting Started
The best way is to use Git to clone this entire project to your local hard drive.
IMPORTANT: Your Git client must already have Git LFS installed, or the binary files will fail to clone properly and you will find all sorts of strange errors occur.
You can find out more about Git LFS at [https://git-lfs.github.com/]
Most new work is performed on the ‘ivan’ branch — a feature branch where I work, typically for a month or so at a time, before I perform a ‘squash merge’ back into the ‘development’ branch.
If there’s no ‘ivan’ branch, have a look and see if there is work happening on a feature branch. I often go a couple of months getting a feature ready or re-factoring, before I can safely merge it all back into the ‘development’ branch.
The ‘development’ branch is there to merge multiple feature branches prior to a squash merge into the ‘master’ branch.
The ‘master’ branch is usually a month or so behind any work, but is generally expected to both build and have a test level to get you started quickly.
It is important to point out here that you need the CRYENGINE source code in order to build this project. It’s best if you checkout the source from GitHub, as Chrysalis will track the CRYENGINE source pretty closely. The engine needs to be installed, and the Chrysalis project must point to the version of the engine you will build it against.
Currently, it is building against the ‘Stabilisation’ branch of my fork of the CRYENGINE repository.
After you have cloned the repository to your local hard drive you will need to right click on the ‘Chrysalis.cryproject’ and tell it to ‘Generate Solution’.
This will invoke the cmake process, which will process the cryproject file and create an MSVC solution that is suitable for your machine.
The ‘Solutions’ folder that is present in some branches of the repository is from an earlier attempt to have the Microsoft Team Services system perform a build for continuous integration purposes. It failed, and will need to be purged at some point in the future.
The project contains both the code to build, and the project files needed by CRYENGINE to run the example levels.
Don’t expect any flash looking level design or grahpics, I’m a programmer, so any models and textures are done as quickly and easily as I can to test out the features.
One final note about the supplied test levels. The level.pak and terraintexture.pak files which are required to load these and test in pure game mode are not booked into the repository. These files are generated by sandbox when you go to the main menu and select «File…Export To Engine». You will have to do this at least one for each level in order to test in game mode. The same applies if you make any changes to a level, it must be exported to the engine in order for those changes to be seen in game mode.
◆ 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. |
Common Animation Related Usage
Exported *.i_caf files contain animation in uncompressed format. To be loaded in the engine, they first need to be compressed into *.caf files. For local use during production, this is normally done by automatic invocation of RC in Sandbox.
To perform a full build on your local PC, you can use following command line:
- /animConfigFolder is used to specify location of SkeletonList.xml and DbaTable.json within /sourceroot.
- The /sourceroot and /targetroot options should not be pointing to the same location.
- The /p options specifies the target platform. «PC», «X360» and «PS3» are possible values. If not specified, it defaults to the «PC».
- /refresh options is used to ensure that target files will be overwritten if they exist and modification dates match source files.
- You can find result of the log of the invocation in Tools\rc\rc_log*.log files.
Plug-In Tutorials
Here’s a list of tutorials that run you through using plug-ins to incorporate 3rd party software.
Simon Fuchs explains how to create and export an object from 3ds Studio Max.
SketchUp
This tutorial explains how to create and export a detailed object from SketchUp.
And in this screencast, GaGiCF explains how to export a SketchUp object for use in CE3:
How to export model from Google SketchUp to CryEngine 3 Tutorial HD (PlayUp Tools)
Photoshop
Konstantin Popovic has a short screencast explaining how to install the Photoshop CryTIF plugin:
https://youtube.com/watch?v=uRdnkzU1TCA
And this written tutorial explains how to use and export from Photoshop using CryTIF.
Time to Get to Work!
You’ve read this article and have access to all these great tutorials and resources that should help you get started within CryEngine. Whether you want to create levels and environments, program, or muck around there is much you can do in CryEngine 3.
The most important thing you can do in the CryEngine suite is to experiment. You can figure out and create so many cool items just by experimenting.
Put in the hard work and determination and have a go at creating projects. Leave us a link in the comments of what you’ve made. We’d love to see!
Did I miss something? Do you have a question? Feel free to leave a comment down below and I’ll try to answer you or add the resource to the article.
Roundups
12 Gamedev Engines and Platforms (And the Best Ways to Learn Each of Them)
Michael James Williams
◆ 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. |
◆ DynamicLightFlags
|
strong |
Flags that can be used to set the parameters of dynamic lights.
Enumerator | |
---|---|
AreaSpecTex |
Flag for AreaSpecTex. |
Directional |
Flag that indicates this is a directional light. |
BoxProjectedCm |
Flag for box projected cubemaps. |
Post3DRenderer |
Flag for post 3d renderer light. |
CastShadowMaps |
Flag that indicates if this light should cast shadows. |
Point |
Flag that indicates this light is a point light. |
Project |
Flag that indicates this light is a projector. |
IgnoresVisAreas |
Flag for ignoring Vis Areas. |
DeferredCubemaps |
Flag that indicates that the cubemaps are deferred. |
HasClipVolume |
Flag that indicates this light has a clip volume. |
Disabled |
Flag that indicate that this light is disabled. |
AreaLight |
Flag that indicates that this light is an area light. |
UseForSVOGI |
Flag that indicates that this light is used for SVOGI. |
Fake |
No lighting, used for Flares, beams and such. |
Sun |
Flag that indicates that this light is the sun. |
LM | |
ThisAreaOnly |
Affects only current area/sector. |
Ambient |
Ambient light (as name indicates, used for replacing ambient). |
IndoorOnly |
Does not affect height map. |
VolumetricFog |
Affects volumetric fog. |
AttachToSun |
Add only to Light Propagation Volume if it’s possible. |
TrackviewTimescrubbing |
Add only to Light Propagation Volume if it’s possible. |
VolumetricFogOnly |
Affects only volumetric fog. |
LightTypeMask |
Mask with the various types of light that are available. |
◆ 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 |