LINUX.ORG.RU

Хочу знать ваше мнение при принятии важного для меня решения

 ,


0

1

Я хочу создать синглплеерную игру (FPS + некоторый упор на физику). Для этого пытаюсь модифицировать движок cube2. К сожалению, его код никак не документирован, что осложняет жизнь, сложен для понимания сам по себе, плюс движок заточен под мультиплеер. Прошу вас посмотреть в исходный код cube2 и высказать свое мнение о том, стоит ли модифицировать его под мои задачи, или лучше сделать велосипед (с использованием сторонних графического и физического движков). А может быть, вообще допиливать что-либо другое. Или я идиот, а код cube2 понятен без комментариев
//Запилил тег для интересующихся, если таковые имеются

★★

Последнее исправление: netcat (всего исправлений: 1)

высказать свое мнение

А зачем тебе чужое мнение? Ты же делать будешь.

а код cube2 понятен без комментариев

Есть пример задачи? Я могу попробовать глянуть, всё равно лень делом заниматься. Я до этого не видел ни строчки из движка, так что это можно считать тестом на «понятность».

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

А зачем тебе чужое мнение? Ты же делать будешь.

Опыта в геймдеве у меня 0. Хотя бы посмотрю, что другие, возможно более опытные люди думают.

Есть пример задачи?

Например, в своей игре я хочу сделать интерактивное окружение. Что там у нас в Half-Life? Там можно двигать ящики. Ок, хочу у себя такое реализовать. Открываем файл с кодом, отвечающим за физику (https://bitbucket.org/inish777/penteract/src/6a7de2864b785435b38aa9fd8859ce92...) и ... не знаем, что тут вообще происходит. Не помогла даже изученная книга Конгера «Физика для разработчиков компьютерных игр». И таких моментов куча. Я уже месяца 2 пытаюсь понять, как устроен и работает cube 2, но бестолку. Да и код мне кажется уродливым (но я могу быть не прав).

netcat ★★
() автор топика
Последнее исправление: netcat (всего исправлений: 1)
Ответ на: комментарий от netcat

А что мне в движке нравится, так это редактор карт.

netcat ★★
() автор топика
Ответ на: комментарий от netcat

не знаем, что тут вообще происходит

Куча функций, которые считают, пересекаются объекты или нет.

можно двигать ящики

moveplatform. Очень похоже на попытку двигать платформу. Двигают немного платформу, получают список пересекающих объектов, обзывают это пассажирами. Потом двигают платформу и пассажиров. Если пассажиры платформы сталкиваются с чем-то ещё, кроме платформы, платформа не двигается. Похоже это на случай, если игрок упрётся головой в потолок. Мне кажется, тебе надо сделать ящик передвигающимся объектом и использовать moveplatform как образец для своей функции (moveobject).

Да и код мне кажется уродливым

Странный он, да. Си с классами.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Благодарю. Еще я хочу прикрутить assimp, чтобы расширить спектр поддерживаемых типов моделей. С этим, однако, все понятнее (вместо md5.h, md3.h сделать единый загрузчик-обертку-над-assimp и поправить rendermodel.c). Вот только непонятно как рендерить загруженные с помощью assimp модели.

netcat ★★
() автор топика
Ответ на: комментарий от whiskydotjar

О, спасибо, оказывается cube2 ковыряли и до меня.

netcat ★★
() автор топика
Ответ на: комментарий от netcat

Вот только непонятно как рендерить загруженные с помощью assimp модели.

Сделай преобразователь в формат cube2.

i-rinat ★★★★★
()
Ответ на: комментарий от i-rinat

Само собой, я об этом думал, но не лучше ли сразу переписать все как надо, вместо того, чтобы плодить лишние сущности? Или все-равно?

netcat ★★
() автор топика

Подписался.

Dron ★★★★★
()
Ответ на: комментарий от netcat

Или все-равно?

Сначала сделай, чтобы работало, потом сделай «как надо». Прототип → продукт.

i-rinat ★★★★★
()

Изобретать велосипед всегда было плохим занятием (кроме первого раза.) Не проще ли найти то что готовое и подходящее?

Khenty
()

К сожалению, его код никак не документирован, что осложняет жизнь, сложен для понимания сам по себе, плюс движок заточен под мультиплеер.

Я в геймдеве не силен, но при беглом просмотре код оставляет приятное впечатление. Вам бы что-то попроще сначала изучить, как вообще работают с OpenGL, например. В общем: «пилите Шура, пилите...»

no-such-file ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.