Войти
СайтФорумОбсуждение

Quake 3 Source Code (Комментарии к новости) (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
18:24, 23 авг 2005

какое там ооп??
код самой игры на C написан

#16
19:21, 23 авг 2005

winter
>Правда? Тогда скачай себе Doom3 SDK и убедись, что там ПОЛНОСТЬЮ переписан весь STL (если лень искать - директория idLib).
И что это значит? Ты осознаёшь все причины, которые побудили аффтаров так сделать? или ты просто тупо копируешь "потому что так делает кармак"?

>там ПОЛНОСТЬЮ переписан весь STL
Враньё, как и следовало ожидать. Написаны лишь самодельные велосипеды для вектора и списка, весьма кривые стек и очередь и кое-какие извраты по поводу строк.

>Просто повторю еще раз то, что говорил давно-давно, еще при забавном обсуждении "MSVC против Билдера": все серьезные проекты пишутся без какого бы то ни было STL и - тем паче! - без всяких бустов.
А это из чего следует? что ты вообще знаешь о boost'е? (похоже что ты его вообще не знаешь, если ты так говоришь).

#17
19:33, 23 авг 2005

cppguru
забей, ты ему ничего не докажешь - таких как он тут полно и каждый день становится все больше
они забавны в своей ограниченности, но толку от споров с ними никакого:
"смотрите! кармак написал свой list! он гений! стл - сакс! *слышен топот ног людей, убегающих переделывать свои мморпг-проэкты*" :)

#18
22:11, 23 авг 2005

Rageous
>какое там ооп??
Обычное такое ООП, просто через жопу.
Посмотри хотя бы q3_ui. Там menucommon_s -- это базовая структура элементов ui, объявляется как первый их член.
Указатель на "экземпляр базового класса" выводится лобовым преобразованием.
Ну и еще куча примеров реализации идиом, которые в плюсах поддерживаются либо напрямую, либо ценой гораздо меньших усилий. Это не говоря про читаемость.

>код самой игры на C написан
Ну да, это многое объясняет.

В общем, присоединяюсь к cppguru. И добавлю свое имхо -- не смотрите вы эти чудовищные исходники. Нет там ничего. Анахронизм.

#19
22:54, 23 авг 2005

budda
пример с UI - это не ооп, а извращение
вообще я не сторонник реализации ооп на C - выходит все жуткими извратами, в ущерб всему, чему только можно
не говоря уже о том, что часть ооп-ных вещей вообще человек в здравом уме на C делать не будет

#20
12:23, 24 авг 2005

cppguru

> И что это значит? Ты осознаёшь все причины, которые побудили аффтаров так сделать? или ты просто тупо
> копируешь "потому что так делает кармак"?
Да ты что, нет смысла так кипятиться! Я тебя не оскорблял, так зачем же ты на меня наезжаешь? К тому же, если ты внимательно почитаешь мои посты, то увидишь, что я ничего не копирую - я тоже использую STL, как и ты. Просто ты написал, что q3 - анахронизм, и сейчас STL нет смысла переписывать. Я тебе совершенно логично ответил, что вот есть Дум3 - икона гейм-программирования, и там не используется STL (все, что нужно, переписано).

> Написаны лишь самодельные велосипеды для вектора и списка, весьма кривые стек и очередь и кое-какие извраты по
> поводу строк.
Там реализовано несколько очень красивых контейнеров. Наезды на профессионалов типа "весьма кривые стек и очередь" смотрятся сомнительно. Чем же они так тебе не понравились, можно узнать?

Rageous

> они забавны в своей ограниченности
Ты осознаешь, что твое поведение довольно-таки отвратительно? ;) Когда же здесь наконец научатся по-человечески вести дискуссии?

#21
17:33, 24 авг 2005

cppguru, Rageous

Прошу прощения, если что-то в моих высказываниях вас обидело.

Удивительно все же, какой флейм вызвало мое простое заявление о том, что в Дум3 не используется STL и что сами исходники Дум3 - икона гейм-кодинга ;)

#22
17:49, 24 авг 2005

Кто мне ответит на вопрос: Зачем хранить карты теней в HSV, а при загрузке карты конвертировать их в RGB? Почему сразу не в RGB хранить?

#23
20:59, 24 авг 2005

XProger
эээээ.... мож это дело  как-то оптимайзает работу с динам. памятью; уловка для внесения неразберихи в головы любителям дизассамблирования; спроси Кармака... видно была причина... впрочем я не прогер :х...

#24
21:43, 24 авг 2005

>>Правда? Тогда скачай себе Doom3 SDK и убедись, что там ПОЛНОСТЬЮ
>переписан весь STL (если лень искать - директория idLib).
>И что это значит? Ты осознаёшь все причины, которые побудили аффтаров так сделать?
>или ты просто тупо >копируешь "потому что так делает кармак"?
Чтобы осознать причины, достаточно попробовать покомпилить STL на платформе/компиляторе отличной от win32/VC. Возможно в это трудно поверить, но есть всякие другие компилеры и платформы :)
// на PS2 даже printf может вызвать нежелательную фрагментацию памяти.
// на GCC 3.9.x под SPARC для определённой платформы STL не компилиться вообще.
// и т.д. и т.п.

А Doom'ы/Quake'и они работают на всяких разных платформах.

По поводу кривых велосипедов и нечего там смотреть -- Q3 это коммерческий движок на котором была сделана не одна игра. Интересно посмотреть как всё сделано в целом, а не выискивать кривости реализации стека или списка...

id, знаете ли, писал движок чтобы сделать игры, а не чтобы написать красивый движок.

#25
22:39, 24 авг 2005

У меня вопрос по сборке их.
Возможно ли скомпилить его под 64 битную платформу? Или там асемблерный код никак не позволит?
У меня баги прут, хотя под 32 бита все нормально компилится. Может можно че нить сделать?
Никто не пробовал?
Компилю под линухом gcc version 3.4.4, kernel 2.6.12, NASM version 0.98.39.

#26
0:31, 25 авг 2005

народ с сайта delphigl.com решил перевести Q3 на Delphi %-)

#27
0:57, 25 авг 2005

subscribe

#28
6:58, 25 авг 2005

sub

#29
7:00, 25 авг 2005

Sniper
Я им помогу! Во имя светлой памяти Яну Хорну!

Страницы: 1 2 3 4 Следующая »
СайтФорумОбсуждение

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