ФлеймФорумПрограммирование

Как кодить на флеше в опенгл-стиле?

#0
16:23, 8 апр 2012

Решил тут "тряхнуть стариной" и закодить игрушку на флеше. Впрочем, старина не такая уж и старинная, года три ей всего, да и жиденькая - кодил на флеше месяц.

Попытался что-нибудь сделать - устал. AddChild/RemoveChild - адовый ад, на каждый чих заводить по отдельному экземпляру спрайта и управлять его эволюцией по экрану, вместо того чтобы одной строчкой вызвать Blit(sprite, x, y); или там sprite->Blit(x,y) - печалит меня очень.
Хочу без дисплейлиста. Знаю copyPixels, но copyPixels не могут обеспечить трансформацию объекту, а трансформаций хочется. Надеялся, что кто-нибудь уже закодил движок, который делает софтовый рендер и потом copyPixels, каким-нибудь хитрым оптимальным способом, может с применением алхимии, чтобы все это с нормальной скоростью работало - и увы, ничего не нашел.
Таки ничего нет, или плохо искал?

Flash 11.3 и Stage3d пока не хочется, но если ничего не выгорит, буду пробовать его. Оно у меня на маке почему-то не работает - издержки беты..

#1
16:39, 8 апр 2012

jaguard

> Хочу без дисплейлиста. Знаю copyPixels, но copyPixels не могут обеспечить
> трансформацию объекту, а трансформаций хочется.

Юзай draw.

#2
16:42, 8 апр 2012

Antilegent

Медленно получится.

#3
16:52, 8 апр 2012

jaguard

Да. Поэтому нужно выбирать между "медленно и с трансформациями" и "быстро, но без трансформаций".

Или ещё можно попробовать написать свой двиг на Хаксе или Ц++.

Других вариантов, насколько я знаю, нет.

#4
16:53, 8 апр 2012

копипиксел никак не работает быстрее обычного двигающегося спрайта. хочешь тормоза - делай всё в битмапдате и копипиксел.

#5
16:54, 8 апр 2012

jaguard
> Медленно получится.

у меня он довольно быстр. В любом случае на флешплеере ниже 11.3 ничего лучше нет.

ИПавлов
> хочешь тормоза - делай всё в битмапдате и копипиксел.

опять же неправда. Даже draw даёт существенный буст производительности, по сравнению с мовиклипами\спрайтами. А копипиксел быстрее дроу гдето на 20%. Но тут уж придётся кешировать повороты, маштабирование... что быстро сожрёт всю оперативу.

#6
17:00, 8 апр 2012

какие мувиклипы блин. спрайт с битмапом и поехали менять битмамы. какие ещё копипикселы. в твоей флэшке копипиксел нужен только для задника разве, что. чтобы сделать его бесконечным и рандомным. а всё остальное. делается битмапами. с кучкой битмапдат.

#7
17:04, 8 апр 2012

ИПавлов

А задник и рендится копипикселем. А объекты с помощью draw. Использовать спрайты нет нужды.

#8
17:19, 8 апр 2012

Убедили, буду пробовать copyPixels для бекграунда + draw для остального. Но все-таки хочется какой-нибудь движок хитробыстрый. Как alternativa, только 2д ).

#9
17:21, 8 апр 2012

jaguard

> Но все-таки хочется какой-нибудь движок хитробыстрый.

Дык напиши сам.

#10
17:22, 8 апр 2012

Antilegent

Дык лень. Не пишу я движки, скучно.

#11
18:23, 8 апр 2012

CopyPixels классная олдскульная перфоманс буст штука. Но уже наверно пора смотреть на 11.0+ плеера.
Уже в 11.1 все хорошо со stage3d. 11.3 бету не обязательно брать, чтобы писать быстрые 2д игры на стейдж3д.

>>Но все-таки хочется какой-нибудь движок хитробыстрый. Как alternativa, только 2д ).
2д движки на stage3d:

starling — птички во фейсбуке сделаны на нем.
ND2D
Genome2d
Axel

компоненты для старлинга заточеные под мобайл. Может стоит глянуть.

Быстрое сравнение трех 2D библиотек работающих на Stage3D
кстате, там же интересные каменты

#12
18:39, 8 апр 2012

Ps-spectre
> Но уже наверно пора смотреть на 11.0+ плеера.

Имхо пока рановато. По данным моего сайта на 11-м плеере гдето 60%-65% игроков. Как будет 90-95%, тогда да, пора :) короче в 2013 думаю можно спокойно начать юзать.

#13
18:44, 8 апр 2012

XIRMAC, хм. Ну похоже действительно рановато делать игры которые должны принести денюжки под 11+ плеера. Но смотреть уже можно в эту сторону потихоньку. )
Тем более, далеко не для каждой игры надо реально большой перфоманс и тысячи спрайтов в кадре.

#14
7:29, 9 апр 2012

Да, дилемма - использовать старый но надежный подход, или перспективный и современный, но пока с трудом поддерживаемый :).

Удивило и опечалило что на айпаде и прочих таблетках такая ацкая производительность - значит на мобилы в этот раз придут полноценные конкуренты с флеша - а их и так хватает уже, конкурентов этих.

Потестил примеры ND2d на 11.1 - как-то медленно, однако. Партиклы и первая "водная" сцена на 5 фпс только тянут, даже в среднем размере окна.

ФлеймФорумПрограммирование

Тема в архиве.