Важная информация
Показано с 1 по 6 из 6

Тема: 2D/3D Графика. Игры.

  1. #1 2D/3D Графика. Игры. 
    Разбирающийся
    Регистрация
    06.09.2012
    Адрес
    MPLS/MN USA
    Сообщений
    31
    Сказал(а) спасибо
    0
    Поблагодарили 1 раз в 1 сообщении
    Записей в блоге
    1
    Давно очень интересуюсь графикой. В сети относительно немного нормальных, адекватных ресурсов по этой тематике.
    Так же у меня приличный опыт разработки комп. игр. Хотелось бы веточку по этой тематике. )
    Могу даже набросать несколько статей или вести дневник по разработке проекта.
    Можно устроить школу игростроя, если кому-то интересно.
    Ответить с цитированием  
     

  2. #2  
    Гуру Аватар для Абадябер
    Регистрация
    09.12.2010
    Адрес
    Беларусь, Минск
    Сообщений
    1,219
    Сказал(а) спасибо
    302
    Поблагодарили 176 раз(а) в 144 сообщениях
    Записей в блоге
    5
    Вот, я-бы с удовольствием почитал. У меня как раз есть вопросы. Не знаю, как по поводу раздела, в принципе, я то сам только за, однако нужно еще с администратором договариваться, а также поразмыслить более серьезно, будет ли раздел популярен. Просто про игры можно писать и в разделе "Проекты".
    Один из вопросов задам сразу: давайте плюнем на среду разработки, и затронем более общий вопрос: подскажите, пожалуйста, как правильнее будет организовать игровой цикл? Под этим вопросом (не знаю, как его правильно задать) я подразумеваю следующее: На данный момент все мои проекты строятся по примерно такой схеме: идет одиночный просчет мира (изменения позиций всех персонажей, фонов, проверки на события (столкновения чего-либо и.т.п), после чего сразу идет рендер текущей сцены. Мне как-то указали, что такой порядок не совсем верный. Вместо этого мне посоветовали делать просчет сцены максимально часто, а рендер более редко (например, повесить его на прерывание от таймера) и использовать некие переменные для корректировки текущий координат всего и вся. Говорят, что это положительно отразиться на общем "перформансе" игры - даже если и будет низкий FPS, игровой мир все-равно будет жить на заданной скорости, просто изображения на экране станет более резким и грубым. В то время как при моем подходе падение FPS или ускорение FPS сразу-же отразиться на игровом мире - все будет или крепко медленно, или слишком быстро. Я надеюсь, что разъяснил вопрос достаточно подробно. Буду рад, если напишете подробный ответ, или предоставите ссылки на какие-либо статьи. Ибо специфика вопроса делает очень сложным поиск информации в поисковиках - я не в состоянии нормально сформулировать запрос, чтобы машина нашла мне именно нужную информацию.
    Дружба-магия-радость!
    Ответить с цитированием  
     

  3. #3  
    Разбирающийся Аватар для seisros
    Регистрация
    12.09.2012
    Сообщений
    29
    Сказал(а) спасибо
    0
    Поблагодарили 0 раз(а) в 0 сообщениях
    играми не интересуюсь, а вот зозданием 3д объектов да. Только операционки у меня серверные, не знаю как совместить эти вещи.
    Ответить с цитированием  
     

  4. #4  
    Разбирающийся
    Регистрация
    06.09.2012
    Адрес
    MPLS/MN USA
    Сообщений
    31
    Сказал(а) спасибо
    0
    Поблагодарили 1 раз в 1 сообщении
    Записей в блоге
    1
    2 Абадябер
    В общем и целом такое понятие как "правильный основной цикл" - это достаточно размазанное понятие.
    Всё зависит от конкретных целей. Но в частности, для игр, наиболее распространены два способа:

    1. в навал с корректировкой FPS
    1.1 изменяем всё на сцене
    1.2 высчитываем, сколько условно заняло по времени.
    1.3 на основании п.1.2 определяем по приоритетам, что рисуем в этом кадре. или вообще пробрасываем кадр, если время прошло больше чем требуется на условный тик FPS;

    2. заводим таймер с плавающей дельтой и переменную TotalElapsed и все процессы выравниваем интерполяцией по дельте
    2.1 для процессов которые зависят от глобального времени используем TotalElapsed ( и каждый раз в конце цикла приращиваем его на дельту)
    2.2 для процессов требующих относительных вычислений - используем саму дельту.

    Какой из способов более подходит - решать вам. При процедурном программировании лучше сразу определиться... В ООП будет намного проще перескочить на другую реализацию, хотя опять же зависит от уровня ООП.

    P.S. Насчёт примеров... Советую разобрать как это устроено в таких доступных исходниках как Quake и PopCap
    P.P.S. если почитать все исходники Дж. Кармака можно очень чётко проследить эволюцию таймера у него )
    P.P.P.S на мой взгляд, самый универсальный таймер сейчас у HalfLife2... но к сожалению универсальный не всегда лучший

    P.P.P.P.S Скажу честно, это не самый мой сильный конёк) я взял в основу своих движков механизм похожий на тот, что применяется в движке PopCap. На мой взгляд достаточно универсальный и гибкий.
    Последний раз редактировалось handrix; 13.09.2012 в 09:56.
    Ответить с цитированием  
     

  5. #5  
    Разбирающийся
    Регистрация
    06.09.2012
    Адрес
    MPLS/MN USA
    Сообщений
    31
    Сказал(а) спасибо
    0
    Поблагодарили 1 раз в 1 сообщении
    Записей в блоге
    1
    Цитата Сообщение от seisros Посмотреть сообщение
    играми не интересуюсь, а вот зозданием 3д объектов да. Только операционки у меня серверные, не знаю как совместить эти вещи.
    Мне кажется, что Blender с небольшим допилом легко встанет даже на eFltk... можно начать с него... хотя на мой взгляд 3DSMax, Maya или даже Z-Brush куда более удобны )
    Ответить с цитированием  
     

  6. #6  
    Гуру Аватар для Абадябер
    Регистрация
    09.12.2010
    Адрес
    Беларусь, Минск
    Сообщений
    1,219
    Сказал(а) спасибо
    302
    Поблагодарили 176 раз(а) в 144 сообщениях
    Записей в блоге
    5
    handrix, большое спасибо за советы, буду изучать.
    Дружба-магия-радость!
    Ответить с цитированием  
     

Информация о теме
Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Графика на Бейсике
    от >Quiet Snow< в разделе Basic
    Ответов: 16
    Последнее сообщение: 28.06.2011, 19:18
  2. Графика
    от >Quiet Snow< в разделе Turbo Pascal
    Ответов: 5
    Последнее сообщение: 12.06.2011, 16:07
  3. Графика
    от nikita в разделе QBasic
    Ответов: 2
    Последнее сообщение: 05.05.2011, 18:20
  4. Графика в TurboC
    от pingvin в разделе C/C++
    Ответов: 3
    Последнее сообщение: 02.03.2011, 13:25
  5. Графика в ассемблере
    от Potap в разделе Assembler
    Ответов: 3
    Последнее сообщение: 21.01.2011, 13:42
Ваши права
  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •