|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.05.2016, 16:18 | #1 |
Регистрация: 12.05.2011
Сообщений: 6
|
Движок 2D Гонок
Навеяла на меня как то мысль сделать что нибудь в стиле 8(16) битных игр. И вот в итоге настрочил что то похоже, конечно много чего еще нет - атрибутов у дороги(деревья, дома, и прочие пейзажи), машин на дороге( куда же без них), и поворотов дороги..Ну и музончика, конечно 8 битной) Это в принципе не все так не подъемно. Можно сделать, если кому интересно пишите.. Нужен конечно же Художник, ну желательно еще программист для написания редактора уровней..Тогда мечта прокатится с ветерком и разными приколами по 16 битному миру станет реальностью..Надеюсь у меня есть единомышленники.
https://yadi.sk/d/u0RHV1qxrhpEy |
15.05.2016, 11:59 | #2 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
Если нажать и держать кнопку вперёд, то разметка дороги какое-то время движется, а потом останавливается
Мне кажется, игру будет интересно делать по принципу прохождения. То есть у вас сейчас игра бесконечная, а нужно добавить финиш: красную полосу, чтобы, например, через 10 секунд езды мотоцикл пересекал полосу, игроку выдавалось сообщение: "Поздравляем! Вы победили!" и игра начиналась бы с начала Далее, можно начать усложнять игру: добавить препятствия, чтобы при наезде на них игрока отбрасывало на старт, потом повороты и т.д. Последний раз редактировалось 8Observer8; 15.05.2016 в 12:03. Причина: Орфография |
31.05.2016, 09:52 | #3 |
Пользователь
Регистрация: 07.05.2016
Сообщений: 23
|
Hex1986, Вы уже потеряли интерес к созданию 2D гонок? или еще есть запал?
|
31.05.2016, 14:26 | #4 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,327
|
К сожалению, так бывает у многих начинающих. Не терять запал - это самое основное в программировании
|
31.05.2016, 18:48 | #5 |
Пользователь
Регистрация: 07.05.2016
Сообщений: 23
|
кто подхватит начинание Hex1986? или может он сам?
готов внести свою лепту: 6 июня выйду из отпуска и после этого готов реализовать следующую функциональность: сделаю редактор карт с сохранением в файл. каждая трасса отдельный файл. трасса будет иметь следующие ограничения: поворот это один участок , трасса не имеет развилок и пересечений. формат файла не важен , т.к. считывание трассы в игре будет реализовано через следующий интерфейс: // участки трассы TWayType = ( wayVertical, // вертикальный wayHorizontal, // горизонтальный way1Turn, // поворот - выглядит как дуга окружности соответствующий 1 четверти way2Turn, // поворот - выглядит как дуга окружности соответствующий 2 четверти way3Turn, // поворот - выглядит как дуга окружности соответствующий 3 четверти way4Turn // поворот - выглядит как дуга окружности соответствующий 4 четверти ); TWay = class public constructor Create; virtual; destructor Destroy; override; procedure LoadFromFile(FileName: string); // загрузить трассу из файла procedure First; // в начало трассы procedure Next; // следующий участок трассы function Eof: Boolean; // true - это конец трассы function Get: TWayType; // текущий участок трассы end; пишу на delphi, код предлагаю сделать открытым. Последний раз редактировалось rhiroceros; 31.05.2016 в 21:53. Причина: уточнение |
06.06.2016, 13:31 | #6 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,885
|
Смотрел я эти гонки.
К сожалению, не отражено даже зачатков того, что может быть ключевыми фичами, того что цепляло бы. Примитивный раннер может и можно получить, но тут в основном работу художника надо, а не программиста, а художника на шару для немалого объёма графики сложно искать. К тому же для десктопа такие игрули почти неактуальны, на мобайле ещё куда ни шло, но надо освоить поболее, чем имейджи и/или канвас.дро. А Вы, rhiroceros, с какой целью интересуетесь ? Желаете поучаствовать в небольшом проекте ? Стремление хорошее, бесспорно. Но есть пару замечаний. Лучше вливаться в проект с большими наработками - концепты, фичи, наброски, а недодемка - не главное. Также код стоит оформлять по правилам форума (теги CODE или кнопочка #), ну это так, к слову. А по самому коду есть замечания: constructor Create; virtual; - в простых классах виртуальный конструктор не нужен, можете аргументировать его виртуальность ? function Eof: Boolean; - задействовать одно из системных (из модуля систем, хоть оно и не зарезервированное слово), не лучшая практика - может сбивать с толку при чтении и отладке, а в некоторых редких случаях приводить к ошибкам (например, с with), к тому же эта функция исконно обозначает конец файла, и комментарий показывает, что Вы хотите эту логику модифицировать, что опять же мешает восприятию. Однако, есть и хорошие моменты - Вы сразу предлагаете абстрагировать работу через общий "контракт", а также выделаяете бизнес-логику на первое место, развивая терминологию и модель работы в терминах предметной области, сразу описываете условия и принципы работы , это очень хорошо ! |
12.06.2016, 13:08 | #7 |
Пользователь
Регистрация: 07.05.2016
Сообщений: 23
|
Для phomm:
Ох, не хотелось писать, пока редактор карт не выложил, но молчать то же показалось не уместным. "Смотрел я эти гонки. К сожалению, не отражено даже зачатков того, что может быть ключевыми фичами, того что цепляло бы"... Пусть даже так. Но я не нашел ни на этом сайте, ни в интернете подробной информации, как сделать 2d гонки - готовое работающее приложение с кодом, приличной архитектурой, с рассуждениями автора: почему он выбрал именно такие абстракции?; как из них получил конечное приложение?. Такими рассуждениями, чтобы можно было, не смотря код, понять, что в нем можно было бы увидеть. Такими рассуждениями, что бы, не имея код, читатель мог бы достаточно быстро и самостоятельно такой код написать. Код, на основе которого, другой человек, добавив что-то свое, мог бы сделать отличающеюся от других игру. И что бы, условно говоря, человек мог бы сказать так: "Еще вчера не знал, как сделать такого вида игру, но нашел тут кое - какую информацию, прочитал и сегодня точно знаю, как такое сделать. И даже не надо с нуля начинать т.к. код есть." Пусть у людей будет из чего научиться, как вообще, сделать конкретную игру. Что бы тот, кому это интересно, мог за несколько дней впитать в себя то, на что у автора ушли годы. А как научиться игры делать интересными - этому отдельно учится надо. Вот этого хотелось бы. Не знаю получится ли, но постараюсь. "А Вы, rhiroceros, с какой целью интересуетесь ? Желаете поучаствовать в небольшом проекте ?" Именно так. Давно пишу простенькие игры для себя. Захотелось в интернет выйти, на других посмотреть, себя показать. Проекты с большими наработками очень интересны, но пока хочу осмотреться вокруг, не беря на себя больших обязательств по скорости работы (и на работе (не в игровой индустрии) и дома программировать тяжеловато). По-тихонечку, я бы даже сказал медлительно, добить проект 2d гонок, а там посмотрим. Чем меня заинтересовал проект: гонок я еще не делал (в основном делал простенькие платформеры, стрелялки вид сверху/сбоку); гонки: вид сверху, сбоку - не интересны (я представляю как их сделать), вид сзади интересен тем, что не все мне пока понятно, а наброски в голове хотелось бы опробовать в деле. "function Eof: Boolean; - задействовать одно из системных (из модуля систем, хоть оно и не зарезервированное слово), не лучшая практика - может сбивать с толку при чтении и отладке, а в некоторых редких случаях приводить к ошибкам (например, с with), к тому же эта функция исконно обозначает конец файла, и комментарий показывает, что Вы хотите эту логику модифицировать, что опять же мешает восприятию." Честно говоря относился к Eof, как к функции конца любой сущности. (например TADODataSet.Eof). А Вы, какое название в своих проектах используете для такого рода функции? Для всех: Наверно пока редактор карт не выложу, смысла нет, а как выложу, милости прошу - присоединяйтесь, вместе веселее... |
13.06.2016, 12:02 | #8 |
Пользователь
Регистрация: 07.05.2016
Сообщений: 23
|
ля phomm:
..."А по самому коду есть замечания: constructor Create; virtual; - в простых классах виртуальный конструктор не нужен, можете аргументировать его виртуальность ?" Вы, phomm, заставили меня пересмотреть свои взгляды, засомневаться. Всего лишь мое мнение, не более того: Хотел ответить сразу, но понял что не вспомню, почему когда-то решил что все конструкторы, в том числе TObject.Create должны быть виртуальными? (и в глубине души ругал Borland за недоделку) Теперь вспомнил, обратите внимание на следующий код (Delphi 7): Код:
к виртуальности процедур и функции, (по крайней мере там где есть конструкции типа class of). но это опять же если бы TObject был виртуальным, а пока это не так но наверное Вы, phomm, правы, пока нужно делать виртуальными только где это действительно необходимо. Не стоит пугать общественность слишком радикальными взглядами, например при приеме на работу. |
14.06.2016, 16:21 | #9 |
Форумчанин
Регистрация: 14.03.2012
Сообщений: 147
|
|
14.06.2016, 16:32 | #10 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,885
|
Неимоверно приятно получать ответы в таком же стиле, как пишешь их сам (словоохотливо , с ответной мыслью на каждую мысль). А также очень рад, что приняли во внимание мои уточнения и размышления.
Полагаю, в интернете есть разнообразной полноты источники и девблоги, особенно на хабре, там часто сам зачитываюсь подобными статьями. Хотя, конечно, некоего полноценного обучающего цикла найти будет сложно, Но, например, Гром начинал большой такой труд (в закреплённой теме раздела), хоть и не дошёл до кода, но тем не менее, я считаю, полезно изучить для хорошего планирования и анализа. Гонки, особенно в 2д имеют не сильно большую специфику перед остальными играми, если, конечно, цель не высокоточный симулятор, и материалы по многим сферам разработки игр будут полезны, разве что физика обособлена. По коду - Вы правы, виртуальные конструкторы в ходу с конктрукцией class of (метаклассами), и для приёмов DDD - когда тип рабочей сущности определяется на этапе работы программы, а не компиляции, но мне думается, в ключевых классах встречается редко (скорее для элементов коллекций, чем для управляющих систем и самих коллекций). Про еоф - просто глаз цепляется , я бы назвал Last/IsLast/Finish, например. Если есть желание мир посмотреть и себя показать - можем обсудить разные варианты, заходите на огонёк. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
2D движок | Sergeu | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 19 | 01.11.2009 22:47 |
Движок | Alex2009 | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 3 | 25.08.2009 18:18 |
Помогитеу становить движок на сайт. Движок Joomla | acmilan | WordPress и другие CMS | 2 | 01.04.2009 11:26 |
Набор команды для создания гонок. | mflat | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 0 | 17.02.2009 21:10 |
Помогите в создании Гонок | ChukCha | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 21 | 25.07.2008 09:39 |