Войти
ПроектыФорумУтилиты

Мой первый движок

Страницы: 1 2 Следующая »
#0
19:19, 5 ноя. 2009

В общем, такое дело, решил я написать игру. Так как это моя первая игра, то выбрал 2D. Писать просто так игру на голом DirectX не очень удобная вещь, так что я сначала взялся за движок, а заодно решил, раз уж писать движок, то такой, чтоб можно было потом и для других проектов использовать. Вот так намерение написать игру переросло в намерение написать универсальный 2D движок. И вот первая часть пути пройдена, мой движок дожил до первой рабочей версии. В нем пока нет много чего(например, анимированных спрайтов и звука), но это все будет потом. Так как это мой первый движок, я скорее всего допустил много косяков, и перед тем, как продолжать, надо бы довести до ума то, что уже есть. Для этого я и выкладываю его сюда, чтобы знающие люди посмотрели и сказали, что не так.

http://www.sharemania.ru/0185732

PS если что могу перезалить на другой обменник


#1
19:45, 5 ноя. 2009

ммм... каким образом оценивать?

#2
20:35, 5 ноя. 2009

Ты выложил только код или еще демку? Просто там только дебаг версия -- это крайне неприятно, особенно что dll-ки нет.

#3
20:42, 5 ноя. 2009

Не пиши реализацию методов в хидере. Заинклудешь более чем в одном месте и собирай потом multiple declaration всякие. За исключением инлайновых методов.
Всего пара файлов, в которые упихано туда множество сущностей -- повергает в уныние, благо коде стайл более менее сносный.

Помоему, помоему писать игру рано:)

#4
22:29, 5 ноя. 2009

Ммм невозможно это оценить. Ничего полезного код не содержит.
Хоть коде-стайл читаемый.

Но для первой поделки очень даже не плохо. Даже хорошо.(если до этого ты не писал проекты серьезней этого)

#5
23:10, 5 ноя. 2009

Pokimon
> Ничего полезного код не содержит
В смысле?
_sz
> Не пиши реализацию методов в хидере
если ты про arcade.h, то жалких четырех метода засовывать в отдельный файл как-то не хотелось.
если ты про engine.h, то насколько я помню там должны быть только template-функции, остальные реализации в .cpp

#6
23:11, 5 ноя. 2009

Pokimon
> .(если до этого ты не писал проекты серьезней этого)
я вообще до этого на C++ ничего не писал, да и на других языках ничего серьезного тоже

#7
23:47, 5 ноя. 2009

diplay
если ты про arcade.h, то жалких четырех метода засовывать в отдельный файл как-то не хотелось.

Попробуй заинклудь куда-нибудь еще, посмотри что будет ;)
Все, что не инлайновое или шаблонное должно лежать в cpp, не только из-за эстетических соображений.

Рекомендую написать простенткую либу 2D-векторов и прочей полезной утвари и на ней все строить. Сам оценишь насколько будет проще в дальнейшем, поверь.

#8
23:52, 5 ноя. 2009

_sz
> Попробуй заинклудь куда-нибудь еще
если надо будет, то вынесу в .cpp

#9
0:30, 6 ноя. 2009

_sz, header guard, по твоему, для чего придумали?
(код не смотрел)

#10
0:42, 6 ноя. 2009

а что в этом архиве?
4 Mb. не охото качать.
HGE, например, весит меньше.

#11
2:58, 6 ноя. 2009

LowPolyMan
> а что в этом архиве?
> 4 Mb. не охото качать.
~100 кб. двига, остальное автору лень было удалять.

#12
7:40, 6 ноя. 2009
void Level::AddObst(int index, POINT pt)
{
  obstacles[index] = pt;
}
както глупо на мой взгляд передавать индекс.
#13
8:26, 6 ноя. 2009

xapac,o_O что это вообще ? Не легче просто:

void Level::AddObst(POINT pt)
{
  obstacles[count++] = pt;
}

#14
8:32, 6 ноя. 2009

Igor'
я и говорю, что глупо так писать.

Страницы: 1 2 Следующая »
ПроектыФорумУтилиты

Тема в архиве.