[WT] [Архив] [Поиск] [Главная] [Управление]
[Совместно с IIchan.ru]

[Назад] [Вся нить] [Последние 50 сообщений]
Ответ в нить
Имя
Animapcha image [@] [?]
Тема   (reply to 3647)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаемые типы файлов: 7Z, BZ, GIF, JPG, MO, MP3, OGG, PDF, PNG, PSD, RAR, SVG, SWF, TXT, XCF, ZIP
  • Максимально допустимый размер файлов: 10000 кБ.
  • Изображения, размер которых превышает 200 на 200 пикселей, будут уменьшены.
  • Ныне 1196 unique user posts. Посмотреть каталог
  • Радио:

Файл: 129663838162.jpg-(95.50KB, 595x2550, 1294330662534.jpg)
3647 No. 3647 watch    
Стив, расскажи как игры делают. Вот решил я изучить С, купил неделю назад Кернигана и Ритчи. Даже прочитал ее два раза. Но я слишком туп, я не могу понять как используя код написать игру. Хочу, к примеру, что-нибудь типа alien invaders сделать. Скажи, что читать еще, или еще какие методы понимания имеются.
Развернуть все изображения
>> No. 3650    
>>3647
Берешь язык. Пишешь.
>> No. 3652    
Если не брать в расчет то, что в гугле конечно же все есть, то вот в кратце:
1. Сначала учишь СИ
2. Тренируешься в вижуал студии
3. Осваиваешь работу ГУИ и ООП
4. Ставишь DirectХ SDK
5. Читаешь книжки и мануалы по DirectX
6. Охуеваешь
7. Смотришь в сторону 2д движков
8. Изучаешь какой-нибудь скриптовый язык
9. Ходишь по форумам, спрашиваешь, гуглишь
10 Через год рождаешь высер, который интересен только тебе
>> No. 3653    
>>3647
В общем случае (не только С):
1) подготовка (ресурсы, итд)
2) цикл (управление, события и отображение по кругу)
3) завершение программы
>> No. 3658    
То, что тебя интересует называется "архитектура". В первом приближении обычно в играх выглядит так:
while (true)
{
опроситьУстройстваВвода();
внестиИзмененияВСостояниеМира();
отрисоватьМир();
}
В случае программирования под windows надо это подружить еще с циклом обработки сообщений.
>> No. 3659    
Direct3D, кстати, не имеет никаких решительных преимуществ перед опенглом, а последний проще в изучении и кроссплатформенный.
>> No. 3661    
>>3658
Поэтому ычантра и тормозит
>> No. 3662    
Возьми готовый движок, если хочешь игру писать, а не заниматься странной хренью.
>> No. 3667    
>>3662
С готовым джвижком, но без навыков программирования он нихера не сможет, а если сможет то будет очень медленно плодить убогое тормозное говно.
ОП, чтобы делать игры, тебе нужно ебашить опыт с самых основ и прекращай задавать вопросы. Ищи сам, а то я подозреваю, что ты больше хотел создать тред, чем узнать как делают игры.
>> No. 3668    
>>3667
То, что тормозит можно ускорить, кроме того, испортить готовый движок сложнее, чем написать хуйню с нуля.
А если человек не сможет в разумные сроки увидеть результатов (что будет, если он с нуля ковыряться будет), он скорее всего забьет, потратив кучу времени.
Но если опыта программирования нет совсем, то начинать с игр не самое разумное решение.
>> No. 3669    
>>3668
Да и вообще, человек, который спрашивает такой вопрос на бордах или где-то ещё, обычно имеет слабую цель и мотивацию, по опыту говорю.
>> No. 3670    
>>3669
Архитектура игр, да и вообще приложений это область не изобилующая готовыми "правильными" решениями. Хороших материалов по этой теме мало. Соответственно, задавать вопросы - нормально.
>> No. 3671    
>>3670 Да, но с его уровнем он ничерта не поймёт. Можно назадавать дохера вопросов по архитектуре, кучу всего прочитать, но понимание всё равно придёт с опытом. Гейм-специфик вопросами изобилует форум GameDev.ru и статьи там же, надо просто хорошо искать. Чтобы приблизиться к пониманию архитектуры, надо запороть где-то два три велосипедных джвижка и попробовать написать пару игр, а так задавай-не-задавай вопросы - один хрен. Более того, я уважаю более конкретные вопросы, например "Как лучше организовать главную петлю?" или "Мужики, а как мне поможет паттерн визитор и почему это вин/говно и где?" или "Ребята, давайте обсудим возможные варианты построения системы игровых сущностей."
>> No. 3680    
Файл: 129681266159.jpg-(41.97KB, 512x385, 1296776493658.jpg)
3680
Оп, не выёживайся, бери Actionscript 3 (2 похалявнее, но тормозной и поощряет рукожопие) и пиши игры на флеш.
>> No. 3681    
>>3680 Худший совет в треде для ОПа.
>> No. 3682    
>>3681
Обоснуй.
>> No. 3689    
>>3682 Прости, не собираюсь. Обоснование и то что нужно ОПу - в постах выше.
>> No. 3690    
Запомните, няши! Вы не хотите делать игры! Вам просто очень хочется поиграть в то, чего еще не сделали. Оп, возьми лучше одну из твоих любимых игр и займись моддингом. Есть достаточно игр, к которым есть редакторы, мануалы по вскрыванию и редактированию ресурсов. Я серьезно говорю. Ведь гораздо приятнее видеть плоды своих трудов уже через день-два, а не через полгода. Посмотри хотя бы в сторону GTA, Ofp, Arma, Railworks, Sims, Half Life. Я конечно за новыми играми особо не слежу, но думаю современные геймеры могут продолжать этот список довольно долго. Такие дела.
>> No. 3695    
>>3690
Мои любимые игры не имеют редакторов. Они были написаны в 90, тогда об этом не задумывались.
А еще мне просто доставляет писать код, и видеть как он работает. Я уже давно не представляю, куда идет проект, и что я хочу получить на выходе.
Не оп, но все же.
>> No. 3698    
>>3695 А вот ты - мужик. Всё правильно делаешь.
The journey is the reward.
>> No. 3699    
>А вот ты - мужик
а жаль
>> No. 3705    
>>3699 Тоже хотел родиться и жить девочкой?
>> No. 3708    
>>3705
Только не здесь, а в каком-нибудь добром и няшном мире.
>> No. 4076    
1
>> No. 4078    
Вопрос по теме. Почему все так стремятся писать простенькие игры на с/с++, когда есть питон и etc?
>> No. 4079    
>>4078 Возможно, потому что на С++ есть куда стремиться, в то время как на питоне потолок слишком близко, и за простенькими играми ничего не светит.
>> No. 4080    
>>4078
Потому что через некоторое время понимаешь, что игра уже совсем не простенькая, и питона не хватает, и бросаешься ее переписывать.
Посмотри на питоновские биндинги опенгла, например, и тебе все сразу станет ясно.
>> No. 4081    
>>4079
Люди надеются написать игру уровня вов? Я сомневаюсь.
Графика, сеть, физика и прочие тяжёлые задачи и на с и на питоне работают на одних и тех же модулях. Люди выбирают не те инструменты, как итог законченых проектов не видно.
Потолок питона это скорость, но я и не предлагаю писать числодробилки в которых он сливает в 10(100) раз. Я уверен, что скорости хватит с лихвой для игрушек. Нет? Переписать тонкие места на любимом с и нет проблем.
>> No. 4082    
>>4080
3d не занимался. Думаю чистый OGl будет криво выглядить в питоне. Нужен более высокоуровневый интерфейс. Неужели ничего нет?
Кажется на огра был питон модуль, например.
>> No. 4083    
>>4081 А ещё, потому что все пишут на lua, в связке с С++ джвижком. Питон тормозит и не может в строки по человечески в плане производительности. И встраивать lua проще и механизм более разработан.
>> No. 4085    
И ещё, почему-то, последние года полтора меня начинает потихоньку тошнить от люителей приспосабливать питон под нуждый геймдевелопера, и вдобавок убеждать всех, что это так хорошо и надо.
Ходи на gd.ru
@
Пиши свой велоспиед на С++

Вот путь война.
>> No. 4087    
Файл: 130051510420.jpg-(250.80KB, 500x500, 1286131210185.jpg)
4087
>>4083
Ты знаешь, зачем нужен луа? Видимо нет, раз видишь его необходимость в движке на питоне.
>не может в строки по человечески
Только в утф. С ascii у него все нормально.
>>4082
>будет криво выглядить
Дело не в том, как он выглядит, дело в том, как он работает.
>>4081
>Графика, сеть, физика и прочие тяжёлые задачи и на с и на питоне работают на одних и тех же модулях.
Wut? Что-то я не помню ни одного c-проекта, где бы использовались питоновские библиотеки. Или ты про ядро? Ну так писать свое ядро ос ради игры - это уже перебор.
>> No. 4088    
>>4087
>Ты знаешь, зачем нужен луа? Видимо нет, раз видишь его необходимость в движке на питоне.
Луа не вместе с питоном, а вместо питона. Читать научись. А Луа вместо Питона, один хер С++ нужен. Либо Lua + C++, либо Python + C++, вторая связка проигрывает. Я это имел в виду.
>Только в утф. С ascii у него все нормально.
Я не об этом. Там строки immutable, это пиздец.
>> No. 4089    
>>4087
>>Или ты про ядро?
Я про вещи вроде pymunk. Это биндинг(?) под питон физического движка написаного на с "chipmunk-physics".

>>4088
Когда в игре нужно коверкать большой объём слов, слова легко превращаются в мутабельные листы и собираются обратно. Хотя, я не могу придумать такую игру.
>> No. 4104    
Больше читай.
>Хочу, к примеру, что-нибудь типа alien invaders сделать.
Зачем?
>> No. 4110    
>>4088
Можно придумать задачу, которую удобней будет решить на питоне, чем на луа, питон более тяжелый, но в то же время более мощный, с большим количеством библиотек, которые не вынуждают писать свои велосипеды. Ну и опять же ооп. Классов в луа вроде бы и нет, но можно понаписать костылей. Если костылей становится слишком много, я бы серьезно посмотрел в сторону питона как замене луа.

>>4085
>gd.ru
>Генеральный Директор
Внезапно лол'д.
>> No. 4113    
Давно ли наличие/отсутствие классов в языке стало преимуществом/недостатком? Нет классов и нет, не вижу ни какой проблемы в этом.
>> No. 4116    
>>4110 GameDev.ru
lua это минималистичный мультипарадигменный язык же. Там есть и классы, и first class functions, и замыкания, и прототипы. Классы можно навелосипедить даже более чем одним способом. Там всё очень и очень удобно, ООП вполне прозрачно, библиотек куча, есть coroutines.
Питон тоже замечательный язык, библиотек там больше, кишки ООП также торчат наружу, как и в lua.
>> No. 4117    
Но как встраиваемый в джвижок скриптовый язык больше подходит луа. Первый его конкурент на этом поприще вроде Angel Script что ле. Хотя AS уёбищный донельзя.
>> No. 4121    
Короче
http://stackoverflow.com/questions/38338/why-is-lua-considered-a-game-language

http://lua-users.org/wiki/LuaVersusPython
>> No. 4135    
Файл: C4Engine.pdf-(917.63KB)
4135
и не благодари
>> No. 4137    
lua мёртв же.
>> No. 4141    
>>4135 Это для кого выложил? Я эту сраную схему от С4 видел уже, года три назад или два. Ничего особенного.
>> No. 4142    
>>4137 Бог тоже.
>> No. 4143    
>>4137 Пояснил за "умер" или обосрался.
>> No. 4144    
Обосрался не на лекции.
>> No. 4145    
Внезапно, love2d.org.
2D-движок, OpenGL+OpenAL+Box2D+Lua. Мне доставило, упарываюсь второй месяц, попутно изучая и громоздя костыли на луа.
На самом деле движок весьма тормозной, одна и та же реализация на нём и на HGE отличается по скорости в два-десять раз не в пользу love. Однако, если сравнивать с ActionScript, возможность манипулировать парой тысяч спрайтов одновремнно и с приемлемым fps радует. Плюс внятная документация. Минус - плохая интеграция физики.
Но писать на нём можно действительно быстро, если не заморачиваться и делать всё "в лоб".
>> No. 4147    
>>4145 Я щупал это. Это НЕ движок. Хуйня, которая поставляется без соответствующих инструментов для создания контента, это НЕ движок. HGE это тоже не движок, блядь. Там в комплекте сраный редактор шрифтов и частиц. Вот поглядите на говно которое поставляется вместе с Unreal3. Этот гигантский сраный редактор, в котором можно ебашить всю сцену, вот аналогичное говно я хочу видеть в 2D движке. А до этого эти поделия будут оставаться библиотеками для разработки игр и фреймворками для разработки игр. LOVE кстати стильно так выглядит, мне понравилось. Но, лол, я тоже тогда сделал тест по части производительности, но отпугнуло меня не это. Вот допишу своё говно когда-нибудь...
>> No. 4148    
>>4147

Ты не понимаешь сути движка.
>> No. 4149    
Файл: 130087498831.jpg-(40.03KB, 400x503, no-you.jpg)
4149
>>4148 Я то уж точно понимаю.
>> No. 4150    
>>4149
Игровой движок это всего лишь прослойка между низкоуровневым API всяких SDL DirectX OpenGl и высокоуровневым кодом игры.

Как, при этом, наличие или отсутствие сторонних утилит влияет на функции и назначения этой самой прослойки?
>> No. 4151    
>>4150
>Игровой движок это всего лишь прослойка
Нет. Игровой движок это программный комплекс. Даже википедия... В общем:

Game engines provide a suite of visual development tools in addition to reusable software components. These tools are generally provided in an integrated development environment to enable simplified, rapid development of games in a data-driven manner. Game engine developers attempt to "pre-invent the wheel" by developing robust software suites which include many elements a game developer may need to build a game. Most game engine suites provide facilities that ease development, such as graphics, sound, physics and AI functions. These games engines are sometimes called "middleware" because, as with the business sense of the term, they provide a flexible and reusable software platform which provides all the core functionality needed, right out of the box, to develop a game application while reducing costs, complexities, and time-to-market—all critical factors in the highly competitive video game industry.[2] Gamebryo and RenderWare are such widely used middleware programs.[3]

Цитата с вики. Мой сраный опыт подсказывает мне, что на вики не пиздят.
>> No. 4153    
Файл: 130097983615.png-(1.74KB, 50x49, nyu.png)
4153
А если я всё генерирую процедурно, то тогда, получается, это можно назвать игровым движком? Алсо, love2d позволяет процедурно генерировать спрайты и звуки.
Впрочем, это я так, из желания поспорить.
>> No. 4191    
>>3705
И я! И я хочу! И даже похуй - пусть в этом мире.
[Назад] [Вся нить] [Последние 50 сообщений]


Удалить сообщение []
Пароль  
[Mod]