Перейти в начало страницы

Здравствуйте, гость ( Авторизация | Регистрация )

Gameru.net останавливает работу в связи с вторжением армии РФ в Украину.
Support Gameru!
> Курилка программистов, Флуд на около программерские темы
Молния в вакууме
сообщение 28.08.2016, 23:32
Сообщение #201


Почти Игроман
*********

Репутация:   187  
Группа: Участник
Сообщений: 647
Награды: 4
Регистрация: 05.05.2007




Вставить ник Цитировать выделенное в форуму быстрого ответа


Цитата(refuse @ 28.08.2016, 22:08) *
суровый код quake на чистом си

Чистый C - это круто.
Однажды я скомпилировал ваш движок на C борландовским компилятором, и он запускался под Windows NT 3.51. Меня это очень впечатлило. Только в этом движке мне не понравились сложные форматы файлов, требование высокой версии OpenGL и ini-конфиги, они конечно подходят для хранения простых настроек, но если в них хранить что-то более сложное всё превращается в нечитабельную кашу. Поэтому я решил сделать свой такой же, только с простыми форматами файлов, OpenGL 1.1, и конфигами с синтаксисом похожим на LUA. Т.к. использовать луа только для конфигов расточительно, я написал свой парсер похожего формата.
В итоге форматом текстур стал TGA, форматом моделей OGF(не то чтобы не очень нравился этот формат, но он вполне простой) а ресурсы хранились в обычном zip-архиве. Минимально необходимая версия OpenGL - 1.0. Так что можно портировать даже под самые древние платформы. Это всё запускалось под Windows, OS/2 и Linux(только через GLUT), и собиралось разными компиляторами.
(BCC, MSVC 5.0, Watcom, GCC)

C С++ такое бы не прокатило. Он плохо портируем между разными компиляторами.
Например новые компиляторы поймут такой код:
Код
for(int i = 0; i < 10; i++) puts("for 1");
for(int i = 0; i < 10; i++) puts("for 2");
for(int i = 0; i < 10; i++) puts("for 3");

Старые будут ругаться на повторное объяление i. Там надо делать так:
Код
for(int i = 0; i < 10; i++) puts("for 1");
for(i = 0; i < 10; i++) puts("for 2");
for(i = 0; i < 10; i++) puts("for 3");

Такой вариант устроит всех:
Код
int i;

for(i = 0; i < 10; i++) puts("for 1");
for(i = 0; i < 10; i++) puts("for 2");
for(i = 0; i < 10; i++) puts("for 3");


Только вот это уже код на С, а не на C++.

Сообщение отредактировал refuse - 29.08.2016, 00:15
Перейти в начало страницы
 

Сообщений в этой теме
- saas   Курилка программистов   28.08.2016, 23:32
- - RedPxthon   Цитата(saas @ 19.01.2018, 22:32) RedPxtho...   19.01.2018, 22:37
- - ForserX   Есть идеи как получить валидный StackWalk64 с вклю...   28.01.2018, 01:41
|- - Tron   Цитата(ForserX @ 28.01.2018, 01:41) Есть ...   28.01.2018, 02:05
|- - SkyLoader   Цитата(Tron @ 28.01.2018, 02:05) Цитата(F...   05.04.2018, 20:36
- - Орхетектор   Цитата(ForserX @ 28.01.2018, 03:41) Есть ...   28.01.2018, 13:56
- - ForserX   Цитата(Орхетектор @ 28.01.2018, 13:56) В ...   29.01.2018, 08:43
|- - abramcumner   Цитата(ForserX @ 29.01.2018, 08:43) Под х...   29.01.2018, 12:42
- - Орхетектор   Цитата(ForserX @ 29.01.2018, 10:43) Под х...   29.01.2018, 10:24
- - ForserX   abramcumner, да. Орхетектор, это для общего разви...   29.01.2018, 15:13
- - NanoBot-AMK   Использую МАСМ. Но я считаю что он не полноценен. ...   28.03.2018, 01:37
- - Орхетектор   Цитата(NanoBot-AMK @ 28.03.2018, 03...   28.03.2018, 01:40
- - NanoBot-AMK   Кто то сказал на С, что это такой «универсальный а...   28.03.2018, 01:57
- - andreyholkin   Вопрос: На Виндовс 10 в визуалке 2013 для XP игру ...   05.04.2018, 04:37
- - Neo][   andreyholkin, а в чём вопрос то собственно? Как то...   05.04.2018, 06:52
- - Орхетектор   Цитата(NanoBot-AMK @ 28.03.2018, 03...   05.04.2018, 10:00
- - Cossack-HD   C# DataTable Чё то не могу найти документацию о на...   05.04.2018, 17:54
|- - abramcumner   Цитата(Cossack-HD @ 05.04.2018, 17:5...   05.04.2018, 18:19
- - Cossack-HD   abramcumner, щикарно! Значит, DataTable это ка...   05.04.2018, 18:52
|- - abramcumner   Цитата(Cossack-HD @ 05.04.2018, 18:5...   05.04.2018, 18:57
- - Орхетектор   Кстати, для получения информации по стеку вызовов ...   05.04.2018, 22:43
- - SkyLoader   Орхетектор, вариант, который Tron кидал, тоже это ...   05.04.2018, 23:04
- - Орхетектор   Есть некий класс, в задачу которого входит огранич...   08.04.2018, 23:38
- - ForserX   Кто-то подключал Appveyor для организаций? Именно ...   09.04.2018, 10:29
- - СамСебеСекретарша   Там это, майкрософт выложили исходники файломенедж...   11.04.2018, 00:38
- - Neo][   СамСебеСекретарша, так ты и сейчас можешь полистат...   11.04.2018, 06:43
- - Орхетектор   Цитата(Neo][ @ 11.04.2018, 08:43)...   11.04.2018, 10:09
- - СамСебеСекретарша   Орхетектор, ядро XP официально выложили по програм...   11.04.2018, 13:16
- - Neo][   Цитата(СамСебеСекретарша @ 11.04.2018, 15...   11.04.2018, 14:59
- - NanoBot-AMK   Слышали новость! Мелкософт купил GitHub! В...   06.06.2018, 17:23
- - СамСебеСекретарша   Цитата(NanoBot-AMK @ 06.06.2018, 17...   06.06.2018, 17:37
- - Neo][   Цитата(NanoBot-AMK @ 06.06.2018, 19...   07.06.2018, 06:56
- - jamakasi   Цитата(Neo][ @ 07.06.2018, 06:56)...   07.06.2018, 09:41
- - Neo][   jamakasi, борьба с конкурентами, захват новых рынк...   07.06.2018, 12:05
- - СамСебеСекретарша   jamakasi, ты забыл самое главное - IBM с их OS/2.   07.06.2018, 13:14
- - jamakasi   Neo][, затронуло очень сильно. Как разработчика, п...   07.06.2018, 13:30
- - NanoBot-AMK   Уря виртуальную Win95 установил! Только что-то...   19.06.2018, 00:01
|- - Modera   Цитата(NanoBot-AMK @ 19.06.2018, 00...   20.06.2018, 19:42
- - ForserX   Цитата(NanoBot-AMK @ 19.06.2018, 00...   19.06.2018, 01:20
- - Medvedkoo   Я создал! Пхпшники, в отаку! https://www....   27.06.2018, 13:10
- - Молния в вакууме   Какое же говно этот Direct 9. Оказывается для того...   30.08.2018, 02:48
- - Expropriator   Хотелось бы заценить Visual Studio 2005 Profession...   14.09.2018, 22:16
- - Молния в вакууме   А зачем тебе эта дрянь? Скачай лучше борланд.   14.09.2018, 23:07
- - Expropriator   Цитата(Молния в вакууме @ 15.09.2018, 01...   14.09.2018, 23:22
- - Expropriator   Цитата(Expropriator @ 15.09.2018, 01:22) ...   15.09.2018, 02:15
- - Expropriator   Лайтмапы компилит как надо, просто я забыл шейдеры...   15.09.2018, 21:09
- - StUnDeR   Ребят, в тригонометрии совсем слаб, гуглю, но что-...   29.01.2019, 18:49
- - Cossack-HD   StUnDeR, 180 - угол атаки - угол отклонения = угол...   29.01.2019, 19:52
- - jamakasi   StUnDeR, пробовал это почитать? У меня конечно моз...   29.01.2019, 19:55
- - RedMagic   StUnDeR, просто повернуть на стабильный угол после...   29.01.2019, 19:58
- - NanoBot-AMK   Вот тут все(в интернетах) утверждают что питон(pyt...   11.04.2019, 23:36
- - RayTwitty   Цитата(NanoBot-AMK @ 11.04.2019, 23...   11.04.2019, 23:47
- - NanoBot-AMK   Нет, Lua раз 100 проще, питух (сокращенное имя пит...   12.04.2019, 00:18
- - iOrange   Цитата(NanoBot-AMK @ 11.04.2019, 23...   12.04.2019, 00:37
- - RayTwitty   Цитата(NanoBot-AMK @ 12.04.2019, 00...   12.04.2019, 00:37
- - NanoBot-AMK   В любом случае, питух это очень сложный ЯП, со сло...   12.04.2019, 01:14
- - NanoBot-AMK   Цитата(iOrange @ 12.04.2019, 00:37) для н...   12.04.2019, 01:38
- - RayTwitty   Цитата(NanoBot-AMK @ 12.04.2019, 01...   12.04.2019, 02:29
- - iOrange   Цитата(NanoBot-AMK @ 12.04.2019, 00...   12.04.2019, 02:32
- - jamakasi   Питон замечательный язык и то что у него сделано ж...   12.04.2019, 07:52
- - NanoBot-AMK   В любом случае питух, как ЯП просто безполезный, т...   12.04.2019, 11:37
- - 1001v   Цитата(NanoBot-AMK @ 12.04.2019, 11...   12.04.2019, 12:08
- - RayTwitty   Цитата(jamakasi @ 12.04.2019, 07:52) анал...   12.04.2019, 15:28
- - jamakasi   Цитата(NanoBot-AMK @ 12.04.2019, 11...   12.04.2019, 15:44
- - NanoBot-AMK   Цитата(RayTwitty @ 12.04.2019, 15:28) Аха...   12.04.2019, 16:25
- - iOrange   Цитата(NanoBot-AMK @ 12.04.2019, 10...   12.04.2019, 16:28
|- - NanoBot-AMK   Цитата(iOrange @ 12.04.2019, 16:28) Цитат...   30.04.2019, 22:17
|- - abramcumner   Цитата(NanoBot-AMK @ 30.04.2019, 22...   30.04.2019, 23:04
- - RayTwitty   Цитата(NanoBot-AMK @ 12.04.2019, 16...   12.04.2019, 16:34
- - iOrange   Цитата(abramcumner @ 30.04.2019, 22:04) с...   01.05.2019, 00:00
|- - abramcumner   Цитата(iOrange @ 01.05.2019, 00:00) не то...   01.05.2019, 00:35
|- - cjayho   QUOTE (abramcumner @ 30.04.2019, 23:35) Е...   17.05.2019, 14:39
- - iOrange   Цитата(abramcumner @ 30.04.2019, 23:35) Д...   01.05.2019, 01:24
|- - abramcumner   Цитата(iOrange @ 01.05.2019, 01:24) Можно...   01.05.2019, 01:51
- - iOrange   Цитата(abramcumner @ 01.05.2019, 00:51) 1...   01.05.2019, 02:15
|- - abramcumner   Несомненно, я всеми руками и ногами за range-for.   01.05.2019, 02:45
- - iOrange   Цитата(abramcumner @ 01.05.2019, 01:45) Н...   01.05.2019, 02:49
- - Mirus   Цитата(iOrange @ 01.05.2019, 02:49) Матер...   01.05.2019, 10:25
- - NanoBot-AMK   Ассемблер это быстро. TestSort.asmКод;;;;;;;;;;;;;...   17.05.2019, 02:42
|- - abramcumner   Цитата(NanoBot-AMK @ 17.05.2019, 02...   17.05.2019, 09:34
- - buffy   Цитата(cjayho @ 17.05.2019, 14:39) все ти...   17.05.2019, 15:17
- - NanoBot-AMK   Что быстрей, ассемблер или компилятор С/С++? Вопро...   17.05.2019, 17:29
|- - cjayho   QUOTE (NanoBot-AMK @ 17.05.2019, 16...   17.05.2019, 22:12
- - iOrange   Цитата(NanoBot-AMK @ 17.05.2019, 16...   17.05.2019, 17:50
- - NanoBot-AMK   Вам смешно, а мне совсем не смешно. Код я пока...   18.05.2019, 03:46
|- - cjayho   QUOTE (NanoBot-AMK @ 18.05.2019, 02...   18.05.2019, 04:44
- - iOrange   Цитата(NanoBot-AMK @ 18.05.2019, 02...   18.05.2019, 03:54
- - NanoBot-AMK   Я не бухаю, я свою кошку Люску поминаю. Код прив...   18.05.2019, 04:56
|- - cjayho   QUOTE (NanoBot-AMK @ 18.05.2019, 03...   18.05.2019, 05:04
- - iOrange   Цитата(NanoBot-AMK @ 18.05.2019, 03...   18.05.2019, 06:31
- - NanoBot-AMK   AMD Athlon II X4 640 3.00 GHz Это старый процессор...   18.05.2019, 10:25
|- - abramcumner   ЦитатаАх да, тест ассемблерного варианта дал скоро...   18.05.2019, 14:20
- - aka_sektor   RE: Курилка программистов   15.06.2019, 00:27
- - Молния в вакууме   Заценил всё-таки Objective-C, правда не современны...   19.06.2019, 02:40
- - RayTwitty   Почему на вики гитхаба перестали работать якори на...   14.08.2019, 03:06
|- - RayTwitty   Цитата(RayTwitty @ 14.08.2019, 03:06) Поч...   21.08.2019, 15:20
- - iOrange   Цитата(Молния в вакууме @ 19.06.2019, 01...   14.08.2019, 06:12
- - iOrange   ЦитатаAtlassian After much consideration, we...   21.08.2019, 03:41
- - ForserX   iOrange, экспортируй в гит. Я такое провернул два ...   21.08.2019, 07:50
- - iOrange   Цитата(ForserX @ 21.08.2019, 06:50) экспо...   21.08.2019, 08:21
- - xrModder   Есть код: КодBOOL SymRegisterCallback(IN PSYMB...   21.08.2019, 20:52
5 страниц V  < 1 2 3 4 5 >


Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 11.03.2026, 21:41