Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.09.2009, 16:06   #51
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Ошибка начинающего разработчика в том, что он, не разобравшись в логике функционирования подобных систем, живо начинает использовать функции и процедуры схожие, пишет загрузку, выгрузку, а тормозит на чтении и исполнении. Следует сначала определиться с выполнением основных манипуляций над объектами в своей игре, проанализировать, выявить общую структуру изменения состояний, накидать единичную оптимизированную командную строку, если одна строка не удовлетворяет всем условиям, разложить командные строки по типам, ввести тип. Ну, например, тип командной строки атаки другого объекта - это 3 параметра: атака, цель, условие. Атака - зарезервированный тип, как только обработчик натыкается на этот тип, он знает что за ним только 2 параметра. Цель - другой объект, его индекс, тип или что там может быть. Условие - множество зарезервированных вариантов ведения атаки: до конца на поражение, мелкими сериями, убегая и пр. пр. пр.

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

В данный момент следует начать с элементарного. Написать парочку условий на считывание параметров с массива. Массив заполнится с файла. Структура команды пусть будет такая: [объект] [координаты] [перемещение] [координаты]. Вот это если работает, то дело начато.

Есть общий счетчик по которому ориентируются все объекты в игре. Если в скрипте есть оператор ожидания, то считав его и параметр объект в своей переменной счета по счетчику прибавляет интервал до нужного, после чего условие выполнения очередной строки решит, что команда выполнена и передаст управление следующей команде.

Все равно придется писать case, который идентифицирует скриптовые нарезки в массиве. Вот с него и начните.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 26.09.2009, 11:33   #52
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Переход типа goto работает у меня так переносит адрес чтения скриптов на смещение в скрипте,вообще скоро уже будет готовый движок скриптов.
VintProg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с рамами/Проблема с ЖД DRAGGER Компьютерное железо 6 04.01.2009 23:37