Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 22.07.2011, 00:15   #891
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от DimaTs Посмотреть сообщение
в общем не знаю как спросить понятней..
допустим в основном таймере мы отрисовываем все действия персонажей на экране. события от игрока и его действия отрисовать не сложно, а вот как быть с персонажами под управлением ИИ? то есть вот некому НПС нужно пройти из пункта А в пункт Б, я могу рассчитать это, а как запомнить и самое главное как этим воспользоваться? заводить отдельный поток для обсчета?
Неоднократно описывал универсальную структуру объекта по записям собственного типа и систему обработки всех объектов в одном таймере, ...ищите на страницах темы. Чтобы ИИ имел "характер" и двигался так как ему велит "интеллект" сначала нужно придумать скрипт и скрипт-движок, он-то и будет менять направление, если выполнены пункты скрипта.

Вот на страницах соседней темы:

Модель юнитов 1
Модель юнитов 2
Модель юнитов 3
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его

Последний раз редактировалось Beermonza; 22.07.2011 в 00:18.
Beermonza вне форума Ответить с цитированием
Старый 23.07.2011, 22:04   #892
Alexan-Dwer
Форумчанин
 
Аватар для Alexan-Dwer
 
Регистрация: 20.04.2009
Сообщений: 136
Хорошо

phomm, Beermonza спасибо за хороший ответ.
Осталось только узнать, как правильно объявлять такие переменные:
Код:
 type PHero: ^THero; … var Hero: PHero;
или
Код:
 var Hero: ^THero;
P.S. А на форуме изменение репутации работает? Уже второй раз добавляю отзыв, а изменений нет.

Последний раз редактировалось Alexan-Dwer; 23.07.2011 в 22:07. Причина: Постскриптум
Alexan-Dwer вне форума Ответить с цитированием
Старый 23.07.2011, 23:00   #893
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,003
По умолчанию

а варианты идентичны, но первый всетаки лучше.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 24.07.2011, 16:16   #894
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от Alexan-Dwer Посмотреть сообщение
Осталось только узнать, как правильно объявлять такие переменные:
Код:
 type PHero: ^THero; … var Hero: PHero;
или
Код:
 var Hero: ^THero;
P.S. А на форуме изменение репутации работает? Уже второй раз добавляю отзыв, а изменений нет.
В данном случае, без записей (я их не вижу), оба варианта мертвые. Если нужен скоростной доступ к переменной или массиву, то записывай так:

Код:
type
  TABuf = array[0..99] Of Byte;
  PABuf = ^TABuf;

...

var
  A: PABuf;
TABuf - конкретной длины байтовый массив, применяемый под что-то. PABuf - указательный тип, задающий правила доступа к новому типу данных TABuf.

В остальных случаях с записями указательного доступа не требуется, достаточно переменной или массиву на значить тип, например:

Код:
type
  THero = packed record
    H1: Integer;
    H2: Word;
    ....
    H10: PChar;
  end;

...

var
  Hero: THero;
Варианты с указателями нужны там, где нужна скорость обработки, например: графика, музыка, потоки шифрования/расшифровывания данных.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 25.07.2011, 15:16   #895
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от какtus Посмотреть сообщение
Beermonza, а ты сможешь написать нормальную игру без движка?
Читай тему "Как Вы относитесь к созданию игр на Delphi?", если осилишь 90 страниц, узнаешь.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 27.07.2011, 12:42   #896
какtus
Пользователь
 
Аватар для какtus
 
Регистрация: 02.04.2011
Сообщений: 56
По умолчанию

Ага, делать мне больше нечего.
Я пишу на C++ + DirectX Graphics + DirectInput + DirectAudio,
а не на Delphi + тормооооооознутый GDI.
какtus вне форума Ответить с цитированием
Старый 27.07.2011, 15:24   #897
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Цитата:
Сообщение от какtus Посмотреть сообщение
Ага, делать мне больше нечего.
Я пишу на C++ + DirectX Graphics + DirectInput + DirectAudio,
а не на Delphi + тормооооооознутый GDI.
Я бы сказал "тормознутый Flash", "тормознутая Java", "тормознутый кривой GDI", "тормознутый кривой C++ + DirectX Graphics + DirectInput + DirectAudio". Если руки прямые и голова на месте с мозгами внутри, то и на GDI можно выполнить задачу столь же быстро, но меньшими ресурсами системы, а криворукому кичиться бесполезно, везде нужен грамотный подход.

Если ты еще раз скажешь, что "C++ быстрее Delphi" я точно бан торжественно вручу, поскольку темы этого "холивара" на форуме имеются.

Если бы дочитал хотя бы до половины указанную тему, то понял бы, что GDI только выводит готовый кадр на экран как это делает ОС, сама же графика выполняется на ассемблере с расширенными возможностями регистров SSE. В результате: видеокарта может быть самая слабая (8М памяти, как у большинства ноутбуков), работа на всех машинах с ОС Windows, никаких актуальных DirectX закачивать и устанавливать не нужно, достаточно 250М свободной оперативной памяти, загрузка процессора 0-10%, fps ограничен искусственно на уровне 30, что соответствует скорости обновления кадров например в полнометражном фильме.

Внимательнее пожалуйста, а то фразы в духе "у меня монитор Samsung все остальные - какашка!" оцениваются другими пользователями в минус.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 27.07.2011, 15:55   #898
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,003
По умолчанию

уточню, что под "кривой" имелось в виду кривое применение.

кстати Java не тормознутая(руки рулят и там), флэш, с ним труднее, он вроде так нормально аппаратную графику и не поддерживает.

руки многое рулят, смотря на некоторые игры/проги, я в этом массу раз убеждался.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 27.07.2011, 16:14   #899
Beermonza
Инженер ИС
Старожил
 
Аватар для Beermonza
 
Регистрация: 13.12.2006
Сообщений: 2,671
По умолчанию

Пепел Феникса, совершенно верно, ...я не уважаю таких людей, которые говорят: "вы тут ерундой занимаетесь, а вот C++ + DirectX Graphics + DirectInput + DirectAudio - это вещь!!", хотя одного слова DirectX или Direct3D достаточно, чтобы стало понятно какая библиотека используется. Я думаю автор промелочился, нужно было продолжать складывать в строчку: компилятор, номер процессора, ...марку монитора, клавиатуры, мышки, ...на себя перейти, описав возраст + цвет волос + газ, ...а-то величие выбора не так полно ощущается.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Beermonza вне форума Ответить с цитированием
Старый 27.07.2011, 17:51   #900
Ulex
Непрофессионал
Участник клуба
 
Аватар для Ulex
 
Регистрация: 01.01.2008
Сообщений: 1,429
По умолчанию

Цитата:
Сообщение от Beermonza
работа на всех машинах с ОС Windows
Таки далеко не на всех.
Как впрочем и с DirectX и\или OGL.

А вообще я перестаю понимать (а может и не понимал никогда) слово движок. Сейчас принято что-ли всё подряд движком называть? Причём это такая мана небесная - ничего не понимаем, не хотим ничего читать и изучать ("Ага, делать мне больше нечего") - берём движок и пишем очередную "грабить корованы".
И чем больше я узнавал людей, тем больше мне нравились компьютеры.
------------------------------------
Страничка с моими программками http://ulex-masm.ru
Ulex вне форума Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уроки по созданию игр для новичков... -=DeS=- Gamedev - cоздание игр: Unity, OpenGL, DirectX 750 14.11.2017 21:26
Музыка программистов - как вы относитесь к АРИИ? Весёлый Жека Свободное общение 46 10.10.2008 22:32
Конкурсы по созданию игр на Delphi mutabor Свободное общение 0 15.06.2007 12:40
Работа по созданию ПО remix Фриланс 3 22.04.2007 11:00