Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
xtreme3d_4.0 [2024/03/24 22:48] admin |
xtreme3d_4.0 [2025/04/09 01:44] (текущий) admin |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Xtreme3D 4.0 ====== | ====== Xtreme3D 4.0 ====== | ||
- | Четвертое поколение [[Xtreme3D]], | + | Четвертое поколение [[Xtreme3D]], |
+ | |||
+ | Основные особенности: | ||
+ | * Переход на 64-битную архитектуру. 32-битная архитектура больше не поддерживается | ||
+ | * Использование [[Delphi]] 10/11 и [[GLScene]] 2.2 | ||
+ | * Совместимость с современными версиями GameMaker (бывший GameMaker Studio 2) | ||
+ | * Все строки в движке принимаются только в 8-битном представлении (ASCII/ | ||
+ | * Большинство функций не изменились, все мелкие изменения API перечислены ниже | ||
+ | * Реализованы привязки к [[Python]] 3 и [[C]]/ | ||
+ | * Обновлена справка, | ||
[[https:// | [[https:// | ||
- | **Текущий статус: | + | **Текущий статус: |
===== История ===== | ===== История ===== | ||
Строка 11: | Строка 20: | ||
Xtreme3D 4.0 пишется на Delphi 10 и выше с использованием библиотеки GLScene 2.2. Будет поддерживаться только 64-битная архитектура и (пока) только ОС Windows. | Xtreme3D 4.0 пишется на Delphi 10 и выше с использованием библиотеки GLScene 2.2. Будет поддерживаться только 64-битная архитектура и (пока) только ОС Windows. | ||
- | Проект осуществляется в два этапа. На первом были реализованы базовые функции-врапперы, | + | Проект осуществляется в два этапа. На первом были реализованы базовые функции-врапперы, |
Дорожная карта разработки: | Дорожная карта разработки: | ||
* ✔️ **Milestone I** (2022-2023) | * ✔️ **Milestone I** (2022-2023) | ||
- | * ⏳ **Milestone II** (2023-2024) | + | * ✔️ |
- | * ⏳ **Xtreme3D 4.0.0** (ориентировочно | + | * ✔️ |
- | * ⏳ **Xtreme3D 4.1.0** (середина-конец 2025 года) | + | * ✔️ **Xtreme3D 4.0.0** (апрель |
+ | * ⏳ **Xtreme3D 4.1.0** (ориентировочно конец 2025 года) | ||
===== Отличия от Xtreme3D 3.9 ===== | ===== Отличия от Xtreme3D 3.9 ===== | ||
Большинство функций движка остаются без изменений. Изменения, | Большинство функций движка остаются без изменений. Изменения, | ||
+ | * Функция Update теперь называется EngineUpdate | ||
* Функция TrisRendered удалена | * Функция TrisRendered удалена | ||
+ | * Функция ViewerRenderEx удалена | ||
+ | * Новые функции ViewerBeginRender, | ||
+ | * Изменился смысл функции EngineSetMaxLights. Теперь она задает максимальное количество источников света, которые учитываются основной системой освещения и системой LightFX. По умолчанию это количество равно 8 (максимум для основной системы освещения). Если вы хотите использовать больше источников света для системы LightFX, нужно использовать эту функцию | ||
* Функция ViewerGetPickedObjectsList теперь работает с объектами-списками PickList, которые нужно создавать вручную | * Функция ViewerGetPickedObjectsList теперь работает с объектами-списками PickList, которые нужно создавать вручную | ||
+ | * Новые функции PickListCreate, | ||
+ | * Функция ViewerRenderToFilePNG удалена - сохранение в PNG теперь поддерживается в ViewerRenderToFile | ||
+ | * Поддерживаются новые константы для ViewerSetAntiAliasing: | ||
* Функция CameraZoomAll теперь требует указания Viewer во втором параметре | * Функция CameraZoomAll теперь требует указания Viewer во втором параметре | ||
+ | * Новая функция MaterialLibraryGetTextureByName | ||
* Функция SpriteNoZWrite удалена, | * Функция SpriteNoZWrite удалена, | ||
* Функция MaterialCullFrontFaces удалена | * Функция MaterialCullFrontFaces удалена | ||
+ | * Функция MaterialSetZWrite теперь называется MaterialSetDepthWrite | ||
+ | * Новая функция MaterialSetDepthTest | ||
+ | * Переделана система TextureEx у материалов. Удалены функции MaterialLoadTextureEx, | ||
+ | * Новая функция MaterialSetTextureFormatEx | ||
+ | * Новая константа для MaterialSetTextureFormat: | ||
+ | * Новая константа для MaterialSetTextureImageAlpha: | ||
+ | * Новые функции MaterialSetTextureCompareMode, | ||
+ | * Удалены функции ObjectGetCollisionPosition, | ||
* Функции Polygon удалены | * Функции Polygon удалены | ||
+ | * Функции TTFontSetEncoding, | ||
+ | * Шрифты TTFont теперь работают на базе SDL_ttf вместо чистого Freetype | ||
* Функции TextRead, TextConvertANSIToUTF8 удалены | * Функции TextRead, TextConvertANSIToUTF8 удалены | ||
* Функция OdeAddCone удалена | * Функция OdeAddCone удалена | ||
- | * Переделана система TextureEx | + | * Новая функция BaseMeshBuildSilhouetteConnectivityData |
- | * Переделана система FBO. Удалены функции FBOSetViewer, | + | * Новая функция ActorSetReference |
- | * Изменился смысл функции | + | * Новые функции ObjectNotifyChange, |
+ | * Новые функции | ||
+ | * Переделана система FBO. Объект FBO теперь является частью графа сцены. Удалены функции FBOSetViewer, | ||
+ | * Переделаны тени ShadowMap. Удалены функции | ||
+ | * Добавлен новый | ||
+ | * Новые функции GLSLShaderForceDisableStencilTest, | ||
+ | * Новые функции LoggerCreate, | ||
+ | * Функция PtrToReal |