Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > Общие вопросы о Flash (не затрагивающие ActionScript)

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.09.2009, 18:30
progman вне форума Посмотреть профиль Отправить личное сообщение для progman Найти все сообщения от progman
  № 1  
Ответить с цитированием
progman
 
Аватар для progman

Регистрация: May 2007
Адрес: Saint-Petersburg
Сообщений: 136
Отправить сообщение для progman с помощью ICQ
По умолчанию gamedev на flash vs C++

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

к примеру:
изометрическая 2Д стратегия.
размер карты в 10 раз больше видимой области: предположительно экран 800х600.
несколько тысяч юнитов:
- пара сотен с растровой анимацией и
- все остальное статические: деревья, здания и пр...

террайн тайловый. собирается из тайловых клеток. вся мапа 256х256 клеток. в экран умещается область 25х25 клеток.

начал писать на своем изометрическом движке на С++, но задумался в сторону флеши ибо потом есть намерение попробовать её пристроить в какую нить социальную сеть. для winapp будет сделать это на порядок сложнее.

зы конечно не стракрафт будет но в принципе в первом приближении можно сказать что 50% от старкрафта по сложности и геймплею.
__________________
fast restart: *((int*)0) = 0;

Старый 12.09.2009, 21:59
CEBEP вне форума Посмотреть профиль Отправить личное сообщение для CEBEP Посетить домашнюю страницу CEBEP Найти все сообщения от CEBEP
  № 2  
Ответить с цитированием
CEBEP
 
Аватар для CEBEP

Регистрация: Nov 2006
Сообщений: 688
Отправить сообщение для CEBEP с помощью ICQ Отправить сообщение для CEBEP с помощью Skype™
флешы, флеши - в мемориз...
__________________
"I am the terror that flaps in the night…!"

Старый 13.09.2009, 00:39
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 3  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Производительность будет низкая. Очень. Особенно по сравнению с cpp.

Старый 13.09.2009, 12:02
progman вне форума Посмотреть профиль Отправить личное сообщение для progman Найти все сообщения от progman
  № 4  
Ответить с цитированием
progman
 
Аватар для progman

Регистрация: May 2007
Адрес: Saint-Petersburg
Сообщений: 136
Отправить сообщение для progman с помощью ICQ
Цитата:
Сообщение от etc Посмотреть сообщение
Производительность будет низкая. Очень. Особенно по сравнению с cpp.
насколько низкая?

возможно ли оптимизация: к примеру не рисовать то что не в frustum.
__________________
fast restart: *((int*)0) = 0;

Старый 13.09.2009, 12:22
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 5  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Какой frustum в 2D? Проблема не в том, чтобы не рисовать то, что не в кадре (это само собой разумеется), а в том, что Flash выводит всё чисто программно, не используя аппаратное ускорение, и в том, что AS значительно медленнее, чем код на C++ или Pascal.

Вы лучше подумайте не о графике, а о том-же поиске пути для ваших тысяч юнитов. Или просто поищите среди Flash игр хоть что-нибудь подобное тому, что хотите сделать - если найдёте, будете точно знать, что возможно. Я пока не встречал ничего ни на уровне Starcraft, ни половины от него.

Старый 13.09.2009, 13:25
progman вне форума Посмотреть профиль Отправить личное сообщение для progman Найти все сообщения от progman
  № 6  
Ответить с цитированием
progman
 
Аватар для progman

Регистрация: May 2007
Адрес: Saint-Petersburg
Сообщений: 136
Отправить сообщение для progman с помощью ICQ
Цитата:
Сообщение от VVall Посмотреть сообщение
Какой frustum в 2D? Проблема не в том, чтобы не рисовать то, что не в кадре (это само собой разумеется), а в том, что Flash выводит всё чисто программно, не используя аппаратное ускорение, и в том, что AS значительно медленнее, чем код на C++ или Pascal.
как тогда оптимизация происходит - как не рисуется то чего не попадает в экран?

Цитата:
Сообщение от VVall Посмотреть сообщение
Вы лучше подумайте не о графике, а о том-же поиске пути для ваших тысяч юнитов. Или просто поищите среди Flash игр хоть что-нибудь подобное тому, что хотите сделать - если найдёте, будете точно знать, что возможно. Я пока не встречал ничего ни на уровне Starcraft, ни половины от него.
поиск пути как раз не проблема.
__________________
fast restart: *((int*)0) = 0;

Старый 13.09.2009, 13:29
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от progman Посмотреть сообщение
насколько низкая?
На порядок, примерно. Рендер у флеша крайне медлителен. А без обрезки у вас и так ничего не заведется.

Старый 13.09.2009, 13:36
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 8  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Цитата:
Сообщение от progman Посмотреть сообщение
как тогда оптимизация происходит - как не рисуется то чего не попадает в экран?
Даже не знаю, как ответить. Ну вот так и не рисуется, если определено, что не попадает. Я о том, что frustum, который пирамида видимости - это для 3D, а в 2D плоскость.

Цитата:
Сообщение от progman Посмотреть сообщение
поиск пути как раз не проблема.
То есть, вы точно знаете, что достаточно быстрый для RTS (как я понимаю из упоминания Starcraft) поиск пути для тысяч юнитов на Flash не проблема? Тогда о чём вы спрашиваете в этой теме вообще?

Старый 13.09.2009, 16:31
progman вне форума Посмотреть профиль Отправить личное сообщение для progman Найти все сообщения от progman
  № 9  
Ответить с цитированием
progman
 
Аватар для progman

Регистрация: May 2007
Адрес: Saint-Petersburg
Сообщений: 136
Отправить сообщение для progman с помощью ICQ
Цитата:
Сообщение от VVall Посмотреть сообщение
Даже не знаю, как ответить. Ну вот так и не рисуется, если определено, что не попадает. Я о том, что frustum, который пирамида видимости - это для 3D, а в 2D плоскость.
к примеру: качнул книгу "Секреты разработки игр в Macromedia Flash MX"
там есть пример изометрии 10х10 клеток и существо по ним бегает. запустил - всё шутсро бегает.
влез в код и поставил 200х200 и всё сдохло, фпс где то в районе 1 кадр в минуту.
я о такой производительности говорю. 200х200 клеток это вывод 4000х тысяч тайлов. из них четверть гарантированно попадает в область видимости ( frustrum по инерции ее называю ). Флеша я до сиго момента касадся пару раз и очень поверхностно и тонкостей не знаю.
У себя в с++ движке Я контролирую порядок отрисовки и я решаю что рисовать а что не рисовать, в флеше я вообще ничего похожего на функцию render() не нашел :-)
и моск не понимает как там вообще все рисуется. тупо вообще все что есть на сцене или как то можно таки оптимизировать и перед отрисовкой управлять контентом - это рисуем а это нафиг ибо вне зоны видимости?
__________________
fast restart: *((int*)0) = 0;

Старый 13.09.2009, 17:12
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 10  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
Если у вас AS3 и растровая графика, то вывод лучше делать через copyPixels, то есть через копирование прямоугольников из одного изображения в другое. В итоге всё копируется на единственное изображение, находящееся на сцене. Это отдалённо напоминает direct draw, и вы будете контролировать, что, куда и сколько рисовать. Можно почитать здесь (там много статей на эту тему).

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:13.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.