Проекты
GameDev.ru / Проекты / Форум / Oxygine 2D C++ фреймворк (2 стр)

Oxygine 2D C++ фреймворк (2 стр)

Advanced: Тема повышенной сложности или важная.
Страницы: 1 2 3 457 Следующая »
FrankinshteinПостоялецwww8 мар. 201214:36#16
project_manager
кстати спасибо, что обратил внимание на него:) собираюсь зарефакторить и убрать наследование от актера
FrankinshteinПостоялецwww10 мар. 201212:57#17
скачало уже более 50 человек, но ни одного комментария/вопроса по делу. Гульмена интереснее обсуждать?
sb3dУдалёнwww10 мар. 201213:25#18
Frankinshtein
> Гульмена интереснее обсуждать?
+1. Такие же эмоции про Гульмана. Не понимаю, что этот флеймо-шлак делает в проектах.
FrankinshteinПостоялецwww13 мар. 201214:57#19
обновил билд:
- добавил ClipRectActor
- обновил документацию
- переделал наследование Modal
- исправил мелкое дрожание в ProgressBar

Правка: 13 мар. 2012 15:04

FrankinshteinПостоялецwww13 мар. 201215:01#20
вот более полная диаграмма, хотя тут не показаны некоторые важные наследники от Sprite
Изображение

Правка: 13 мар. 2012 15:02

FrankinshteinПостоялецwww15 мар. 201219:02#21
залил новый билд:
- некоторые фиксы
- улучшил панельку со статистикой
- добавил performance test

Изображение

на 5000 созданных спрайтов (Sprite), которые являются полноценными объектами из SceneGraph на Asus Transformer TF101 (android 4) у меня вышло так:

fps = 50
update time = 2ms
render time (null device, отрисовка в никуда)= 11ms
render time (gles1.1  + scale = 0.01) = 13ms, тоесть оверхед от gl вызовов практически нулевой

Правка: 15 мар. 2012 19:05

Developer_AПостоялецwww15 мар. 201219:35#22
Это называется фреймворк, а не движок)))
FrankinshteinПостоялецwww16 мар. 201210:06#23
akaAngeL
согласен, на данном этапе фреймворк
потом будет полцонеценный движок
DizzyПостоялецwww16 мар. 201220:51#24
Хорошо, решил попробовать, но его код и синтаксис - это просто ужас особенно этот префикс СС для всех классов. Я попытался превозмочь себя и все же использовать, но тут всплыло еще много проблем.


Если не сложно, то поподробнее какие проблемы возникли кроме неудобства использования? Баги?

FrankinshteinПостоялецwww17 мар. 201210:41#25
Dizzy
>>Если не сложно, то поподробнее какие проблемы возникли кроме неудобства использования? Баги?
-возникли проблемы компиляцией под андроид, пришлось гуглить и исправлять ошибку
-косяки с вращением экрана
-код который невозможно отлаживать
-миллионы дефайнов в стиле:  CC_PROPERTY(float, m_fSkewX, SkewX)
-методы типа setPosition / setPositionInPixels
-ручное управление объектами в стиле objective-c: retain/release
-много небезопасного кода, разных выделений памяти через new/delete, код в котором ну очень легко допустить утечку памяти
-много бесполезного кода выполняющегося в  каждом цикле обновления

короче там все просто висит на соплях

Правка: 17 мар. 2012 10:45

FrankinshteinПостоялецwww21 мар. 201221:17#26
Обновление:
- добавлена многопоточная загрузка
- на порядок ускорена загрузка картинок и снижено потребление памяти во время загрузки
- улучшена работа и поддержка  различных форматов текстур для атласов (rgba8888, rgba4444, rgba565, rgba5551)
- улучшен вывод отладочной информации
- мелкие фиксы
- добавил одну большую демку (Test), которая включает в себя много много разных тестов и демонстрацию фич:
  - твины
  - текст и его выравнивание в различных условиях
  - drag and drop
  - тестирование производительности
  - работа с ресурсами: выгрузка, загрузка, многопоточная загрузка
  - форматы текстур
  - render to texture

демку для Андроида можете скачать тут: http://goo.gl/1GzZ8
демка для Windows: http://goo.gl/VkJ4U

Правка: 21 мар. 2012 22:32

JusterПостоялецwww22 мар. 201211:28#27
взял твой движок, начал делать демку своей игрушки, пока всё выглядит позитивно. порадовал TreeInspector.

несколько вопросов:
1) допустим мне надо шейдер материал приложить на спрайт, можно такое сделать?
2) какие планы по фичам на будущее?

FrankinshteinПостоялецwww22 мар. 201214:18#28
Juster
1,2.
на ближайшее время:
- решил заменить  платформу Cocos2DX на SDL2.0 и забыть о кокосе, как о страшном сне
- добавить поддержку gles2.0 и станут доступны шейдеры, хотя пока не было надобности в этом

Правка: 22 мар. 2012 14:20

vcodesПостоялецwww23 мар. 201217:43#29
И у меня свой движочек есть :-)
Правда реализован только под windows и ios.
Низкий уровень собственный, используются только библиотеки boost,box2d,libpng и прочие
А верхний у меня на скриптах Squirrel.
Проблему с производительностью обходил тем, что использую скрипты в основном декларативно, т.е. никаких update'ов и render'ов в скриптах,
хотя API позволяет делать в них апдейты. Плюс ко всему задизайнил API таким образом, чтобы было просто перетаскивать код из скриптов в с++ (размещать методы одного класса как в с++, так и в Сквирле одновременно), выполняя таким образом оптимизацию.
для примера приведу код на Squirrel описывающий сцену с циферблатом и вращающимися стрелками минут и часов, в c++ кроме скелетного кода ничего не требуется делать:
local scene = SceneObject({pos = Vector(::Display.width / 2, ::Display.height / 2)})
scene.Clock = ::Sprite({image = "gfx/clock" align = Vector(0.5, 0.5)})
scene.Minute = ::SceneObject()
scene.Minute.Sprite = ::Sprite({image = "gfx/minute" align = Vector(0, 0.5) pos = Vector(-10, 0)})
scene.Minute.Anim = ::Animation({duration = 1000 type = "cycle" to = {angle = 360}})
scene.Hour = ::SceneObject()
scene.Hour.Sprite = ::Sprite({image = "gfx/hour" align = Vector(0, 0.5) pos = Vector(-13, 0)})
scene.Hour.Anim = ::Animation({duration = 1000 * 60 type = "cycle" to = {angle = 360}})

::Graphics.scene = scene

clock | Oxygine 2D C++ фреймворк

Еще подправить бы синтаксис Сквирла, чтобы можно было опускать скобки, если в качестве единственного параметра таблица (как в LUA), будет совсем красиво

Пока запущен только один пробный проект на этом движке, 2 в разработке. Думаю казуалки на нем можно будет писать быстро и удобно, но работы впереди еще очень много, когда нибудь выведу его на публику)

Frankinshtein, а азиатские языки движок держит? партиклы имеются?

Правка: 23 мар. 2012 19:06

Страницы: 1 2 3 457 Следующая »

/ Форум / Проекты / Утилиты

2001—2018 © GameDev.ru — Разработка игр