Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Вниз

Зачем мы этим занимаемся?(филосовствуем)   Найти похожие ветки 

 
NailMan ©   (2004-06-17 18:27) [0]

Имеется в виду занятие геймдевом...

Бдящим начальникам: Прошу ветку никуда не переносить(в потрепаться), так как тамошний народ в большей части мало понимает наши так сказать интимные геймдевелоперские проблемы.

<Также навеяно ветками про оболочки GLScene и DelphiX>

Хочется обсудить и выслушать мнения по поводу того чем мы тут занимаемся. Так сказать по сути и делу мы ничем от садомазо не отличаемся. Сидим годами-месяцами у компа и насилуем себя - и мозг и желудок, ну и наконец бедную задницу отсиживаем.

Какова ваша конечная цель?

Скажу от себя: считаю что конечная цель должна быть самосовершенствование и создание работоспособного и жизнеспособного продукта, который заинтересует не только вас, но и других. Залог второго - продуманная и красивая графика/саунд, удобный интерфейс и геймплей(интересный сюжет и реализация задуманного). Залог первого - реализация второго полностью своими мозгами.
Имхо, считаю тех кто ратует за быстрое создание игры с использованием интерфейсов ускоряющих создание(оболочек DX и OGL) не настоящими программистами, так как такой подход заранее убыточен в плане самосовершенствования и неправилен в плане создания качественного продукта, а своего рода дизайнерами, которые готовы реализовать свои идеи быстро, но с непременной потерей красоты реализации.

Игры создаются не месяцами, а годами. Хороший тому пример Half-Life 2 -создается уже 5(!) лет и до сих пор еще финал-релиз не вышел(ожидается летом). Судя по демкам - плоды 5-летнего непосильного труда(переписано я так думаю 90-95% кода абсолютно с нуля) стоят потраченного времени на все 120%. Заметьте - это писалось в уже опытной и очень мощной команде девелоперов, дезайнеров, художников и т.д и т.п.

Так как же можно создать грамотную игру с навороченным спецэффектами(а какая же игра без них обойдется? Пользователь ценит игру в первую очередь за ЭфИксы) за пару месяцев? Ответ никак.
И уму разуму такой "писатель" не научится.
Цель должна быть правильной - красивый с эстетической и рациональной точки зрения код, без чужих глюков(косой взгляд на "оболочечников"), который всегда можно легко понять без немерянного описания, другому программеру. И это все на хорошей базе - сюжет и продуманность проекта(геймдизайн).

Скажу правду - эти мысли полезли ко мне после того как я закончил(вчера) разработку своего GUI для игрушки. Хотя на сайте валяется демо этого GUI, новый я переписывал с абсолютного нуля, приложив к разработке его структуры изначально привильные(в моем понимании и при влиянии специфики моего будущего движка) подходы. Скажем так я за основу GUI взял тот же подход как и в VCL. Все элементы интерфейса(tbutton,tedit,tlabel,tcheckbox,tlistbox,tscrollbar и т.д.) написаны с нуля и все придумывалось собственными мозгами. Скажем так - я не мог написать грамотного алгоритма  таскания слайдера для скролла больше полугода. Именно реализовав систему GUI в заведомо правильном варианте все сделалось за 10 мин.
Тот старый ГУИ этого не позволял. Теперь посмотрите сколько я потратил на это времени - полгода я писал тот GUI и за неделю написал этот, причем ничего из того старого кроме констант не перенималось.

(Для справки: сегодняшний вариант протодвижка пятый вариант и, надеюсь, последний)

Фактически я теперь мугу делать любые формы с любыми элементами меню в любых вариантах(в рамках игры) без особых проблем и с хорошим качеством графики и комфортом пользования для юзверя(все аналогично привычным дельфевским компонентам).

Проще говоря я меня прет писать красивый(в рамках игры) и простой код, который потом легко понять через полгода. Это стало моей самоцелью - написать игру которая будет сделана из красивого(логически и эстетически) кода и в которую потом будет приянто мне самому играть.

Я конечно же не смогу осилить полностью свой проект(кто знает о нем то поймут какой объем придется делать), поэтому, когда осилю 50% движка я возможно буду искать единомышленников, которые смогут помочь с оставшейся частью. Главное это основа, которая должна быть известна лишь одному человеку. Собственно точно так же и делается в больших конторах(скажем в Valve или ID Soft.). Все в целом(взаимодействие всего со всем) знает только отсилы пара человек(если не один), остальные делают только небольшие части.

Команда(нормальная, а не распределенная) может все. Но у них(членов команды) есть некоторые условия - они вкалывают мозгами и руками ради денег. Причем не быстрого получения денег, а ради долговременного и постоянного получения денег.
Это может лишь обеспечить только новые технологии и новые подходы к геймдеву(и правильный маркетинг тоже). Все кто пользуются лицензированными движками, на основе которых уже делают игры такой долгой популярностью не пользуются никогда.

Скажем Quake3 отличается от Q2 также как и Doom от Quake. Большая половина кода переписана с нуля. Фактически это новая во всех отношениях игра, с новым уровнем графики, физики и геймплея. И до сих пор пользуется огромной популярностью.
Взять даже тот самый half-life. Фактически я не видел сколько уж хороших в плане играбельности игр на основе этого движка(Counter-Strike это всего лишь мод[надстройка] над Half-Life и фактически там ничего не переписывалось) с момента выхода Халвы. Это потому что идеи которые закладывались в игре(на основе движка HL) не могли быть реализованы этим движком, и видимо из-за лени и желания поскорей "срубить бабла" писатели не заботились кропотливым написанием собственного чада. Лишь декоративный моддинг купленного двигла. Порой глюков в такой игре больше чем в оригинале именно из-за того что документация на купленный движок не гарантирует его понимание при любом уровне "мозгов".

Вобщем привожу итог своих мыслеблудий: если ты ALL хочешь стать гемдевелопером, тоесть разработчиком игр, а не гейммейкером, тоесть "делателем" игр, и твоя цель научиться делать игры, то ты обязан делать все сам и с самого нуля - с азов и вверх по лестнице.
Если ты ALL хочешь создать свою "игру", а точнее "поделие" в реальные сроки(месяцы), и тебе важен исключительно результат, то и называй сабя гейммейкером(я всегда рад помочь и тем и другим если у человека есть желание понять свою проблему).

Кстате почему так происходит, что многие, имеющие идею(порой даже очень хорошую идею игры), прогорают буквально на втором месяце нашей тернистой геймдевелоперской жизни? Ответ прост - они не программисты в истинном смысле слова, а геймдизайнеры и сценаристы. А сценаристы кина не могут правильного снять - они не режиссеры и не операторы.

Я очень надеюсь повтречать хорошего дизайнера когда у меня уже будет что показать миру и за что не будет мне стыдно(пока мне стыдно за свою демку). Хотя я и сам неплохо владею моделлингом да и помощник есть, который взял на себя отчасти этот нелегкий труд, все таки для качественного продукта требуется настоящий дизайнер-художник и с этим не поспоришь. Чтож буду писать и буду надеяться что допишу...садомазо-програмисты рулят!

Вот.


 
Огромное Кулясище   (2004-06-17 19:13) [1]

Бла-бла.. китайская проповедь.


 
nexxiss ©   (2004-06-17 23:05) [2]

Программы не пишут, ровно как, музыку не рисуют


 
nexxiss ©   (2004-06-17 23:24) [3]

:)


 
Огромное Кулясище   (2004-06-18 00:04) [4]

Человеку просто жаль потерянного времени и ненужных подробностей. NailMan"у бы не игры писать, а разрабатывать DirectX"ы.


 
wiz ©   (2004-06-18 00:29) [5]

2 nexxiss: Ты уж меня извини, но как тогда появляются программы? поют их что-ли??? Их пишут... Причём в правильном случае их пишут на листе формата A4 с помощью ручки, фломастера и мозга. А потом уже занимаются кодированием, что несомненно является работой чуть-чуть поинтеллектуальнее работы стенографистки. В нормальных софтверных фирмах даже есть разделение: эти ребята - программисты, а эти - кодеры. (Как говорится: "Почуствуйте разницу")

2 Огромное Кулясище: самое смешное, что ты даже не понимаешь, что ему не жаль того времени, которое он потратил...

2 NailMan:
во-многом согласен, в части нет (сейчас нет возможности написать развёрнутый пост по каждому пункту)

Но! Хочется особо заметить, что твой развёрнутый пост поймут только люди, которые сами думают так же и согласны как минимум с половиной твоей позиции.

Остальные - (вы уж извините меня) дети в возрасте от 14 до 18 лет, которые вчера сидели за CS, а сегодня решили "забацать" кульную игруху, не могут даже представить себе от чего ты получаешь свой satisfaction.

И, извините меня еще раз, не могут считаться программистами по призванию, т.к. не получают удовольствия от самого процесса программирования. (Примечание: не надо этого отрицать. Это было прекрасно видно по годичной давности постам Кена, по недавним веткам). Да, это жесткая позиция, но это imho.

Отсюда вывод-прогноз: в ближайшее время здесь появится куча "пионеров программирования" и обольёт всех людей, которые только и могут считаться программистами, грязью и насмешками. А та малая толика людей, которые могут считаться "Мастерами Дельфи" или хотя бы претендуют когда-нибудь ими стать, вначале попытается объяснить первым, а потом отойдёт в сторону (со словами: "может через пару лет вырастут - поймут"), и продолжит заниматься своим делом.

---
wiz: человек, пять с небольшим лет занимающийся "садомазо-программированием" за зарплату


 
Огромное Кулясище   (2004-06-18 00:41) [6]

2 wiz:

А где ты видел программу, в которой делатели игр нажимают волшебные кнопочки и игра за пять минут получается? Ссылочку, если можно.


 
wiz ©   (2004-06-18 00:55) [7]

2 Огромное Кулясище: я не говорил, что она есть, я говорил только о том, что некоторые люди её хотят получить, а некоторым она "нафиг не нужна".

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
Алекс А   (2004-06-18 03:12) [8]


> NailMan ©   (17.06.04 18:27)  

> Имхо, считаю тех кто ратует за быстрое создание игры с использованием
> интерфейсов ускоряющих создание(оболочек DX и OGL) не настоящими
> программистами

Ну и хрен. Писать игру с нуля - тоже самое, что писать свои Видны.

Всё, что остаётся - это ждать когда GLScene перерастёт из графического движка в игровой движок, когда к нему нормально прикрутят, обезглючат ODE или что-нибудь подобное. И вот когда дождёмся, тогда будет прорыв в области игр, и они посыплются как из рога изобилия.


 
wiz ©   (2004-06-18 03:31) [9]

2 Алекс А: "...и они посыплются как из рога изобилия" ...и будут скучными и однообразными.

Так уже было, когда народ выпустил toolkit для создания doom-подобных творений... А еще раз было, когда люди выпустили "RPG-генератор"... Это были большие буржуйские проекты, движок (по-началу) даже не отдавался "просто так", а только за деньги. И знаешь что самое интересное??? ни-че-го. ни одной нормальной игры...

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
Алекс А   (2004-06-18 04:12) [10]


> wiz ©   (18.06.04 03:31) [9]
> 2 Алекс А: "...и они посыплются как из рога изобилия" ...и
> будут скучными и однообразными.
>
> Так уже было, когда народ выпустил toolkit для создания
> doom-подобных творений... А еще раз было, когда люди выпустили
> "RPG-генератор"... Это были большие буржуйские проекты,
> движок (по-началу) даже не отдавался "просто так", а только
> за деньги. И знаешь что самое интересное??? ни-че-го. ни
> одной нормальной игры...

Потому, что всё, что там можно было наваять - это сделать свою карту, может быть монстров. И всё. А всё остальное как в Думе. В этом действительно ничего интересного.


 
Micah'GF   (2004-06-18 07:47) [11]

ЛЮДИ! - будьте людями! Давайте не будем делать резкие комментарии (а то опять все перерастет в спор). У кого есть философские мысли - пишите, у кого мат - оставьте при себе.

2 Огромное Кулясище я тебя понимаю и согласен что не очень приятно тебя когда называют непрограммистом только за то что юзаешь оболочки.
За себя скажу: поработав над игрой, пусть даже под оболочкой, многие мои взгляды на гейммэйк изменились до противоположности, научился многим приемам программирования, а главное, понял суть и принципы разработки игр (чего не хватает новичкам), и следующим моим этапом будет написание игры на СВОЕМ движке.
Вот.


 
КиТаЯц ©   (2004-06-18 09:00) [12]

Ну чтож... Давай пофилософствуем... Настроение распологает :)
Тэкс. Что я здесь прочитал (пишу как понял):
"Люди (разработчики-компьютерщики) деляться на геймдевелоперов и гейммейкеров. Первые в свою очередь деляться на разрабатывающих GUI/движки и спорящих что лучше Си или Дельфи, DelphiX или DirectX, Чистый OGL или GLScene. А вторые на музыкантов, дизайнеров и... непонятную третью составляющую"
А вот здесь я что-то не совсем понял про эту третью составляющую. И вроде бы это что-то вроде людей обладающих навыками программирования или даже программистов которые активно использют готовые (чужие) наработки то ли для того, чтобы себе задачу облегчить, то ли чтобы велосипед не изобретать... Так? Вроде, как можно понять NailMan-а, так... Поскольку:

> Имхо, считаю тех кто ратует за быстрое создание игры с использованием
> интерфейсов ускоряющих создание(оболочек DX и OGL) не настоящими
> программистами

Да, скорее всего, это даже не составляющяя геиммейкерства, а так, Кены всякие... (Ну, блин, Кен дал! Имя уже нарицательным становится! :о))
А вот теперь цитата:

> Я конечно же не смогу осилить полностью свой проект(кто
> знает о нем то поймут какой объем придется делать), поэтому,
> когда осилю 50% движка я возможно буду искать единомышленников,
> которые смогут помочь с оставшейся частью. Главное это основа,
> которая должна быть известна лишь одному человеку. Собственно
> точно так же и делается в больших конторах(скажем в Valve
> или ID Soft.). Все в целом(взаимодействие всего со всем)
> знает только отсилы пара человек(если не один), остальные
> делают только небольшие части.

Какие единомышленники? Они же твои "элементы интерфейса(tbutton,tedit,tlabel,tcheckbox,tlistbox,tscrollbar и т.д.) написаны с нуля и все придумывалось собственными мозгами" будут использовать? Мне видится, что как раз потом и понядобятся те самые "не настоящие программисты", ведь их даже и геймдевелоперами назвать нельзя будет, т.к. будут чужие наработки юзать... Нескладуха какая-то... Вроде и программисты нужны, а вроде и не программисты они вовсе... Короче философия сплошная...
Ну ладно, так вечно философствовать можно... Мне вот как все видится...
Я вообще то в работаю компании, у которой основное направление БД. (Игрушки - это так, для души.) Так вот. Бывает придеш к клиенту там местного программиста приглашают. А он важный такой, ну как же - инженер-программист все-таки. А как до дела доходит, так про себя все насвете матом кроеш - дуб-дерево этот программист липовый. А бывает наоборот: сидит деваха молодая, бухгалтер и что-то там в реестре виндуса колупает... А потом вдруг и говорит: "у нас тут авария была, ваша база здохла, но я ее восстановила"... Во как!
Тэкс. Отвлекся я. Ну да. Это я все к чему. К тому, что вообще нечего делить человеческий потенциал на мейкеров, девелоперов и т.д. В силу специфики системы нашего образования мы все и все сразу. Просто один больше одно умеет, другой - другое.
И нечего рассуждать какой язык программирования лучше, какая среда разработки, и о том, что только лохи чужие движки юзают и т.д и т.п. Пустая болтовня все это. Результат важен. За всеми этими разговорами (не утверждаю) скорее всего стоИт одно - самоутвердится. Доказать себе, что крутой. Типа вы вот это используете, а я все "с нуля сделал". Вот, кто-то еще говорил про головняк с чужими багами. А где гарантия, что багов у тебя меньше будет?
Фигня все это и пустые разговоры. "Я учусь, я развиваюсь". А кто не учится - не развивается? Каждый имеет право делать как он хочет и на чем хочет. Все решает РЕЗУЛЬТАТ. И пользователю твоей будущей программы в голову может прийти что угодно, но только он никогда не задумается о "степени развития" основного геймдевелопера...
Вот, собственно... Высказался.
Люди! Пишите игры - несите радость людям! И пожалуйста, давайте завяжем со спорами типа "OGL или D3D / С++ Delphi что лучше".


 
cyborg ©   (2004-06-18 09:44) [13]


> [8] Алекс А   (18.06.04 03:12)
> И вот когда дождёмся, тогда будет прорыв в области игр,
> и они посыплются как из рога изобилия.

:) прям завалит играми.


> [6] Огромное Кулясище   (18.06.04 00:41)

Я не видел, но знаю еть GameMaker


> [4] Огромное Кулясище   (18.06.04 00:04)
> Человеку просто жаль потерянного времени и ненужных подробностей.
> NailMan"у бы не игры писать, а разрабатывать DirectX"ы.

Я бы с удовольствием пошёл... побежал бы... полетел.


> [1] Огромное Кулясище   (17.06.04 19:13)

Ты видимо из Франции? Такое многословие, я аж устал читать твой пост.


> [2] nexxiss ©   (17.06.04 23:05)
> Программы не пишут, ровно как, музыку не рисуют

Программы пишут. Кстати музыку тоже пишут. И картины пишут. Это так, к сведению, если не в курсе.


 
NailMan ©   (2004-06-18 11:44) [14]

КиТаЯц ©

> Какие единомышленники? Они же твои "элементы интерфейса(tbutton,tedit,tlabel,tcheckbox,tlistbox,tscrollbar
> и т.д.) написаны с нуля и все придумывалось собственными
> мозгами" будут использовать?

Нет конечно, единомышленники, которые помогут разобраться с AI для космосима, ну и с эффектами тоже. GUI-то зачем трогать - он уже готов и на нем сделаны практически все меню.


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

Вот как раз потом и понядобятся люди, которые не являются програмистами в прямом смысле слова. Каждой игре нужен хороший дизайнер-художник, который сможет спроектировать(скомпоновать) удобный для пользователя интерфейс и идеологию взаимодействия с игрой(коддинг - это мое дело). Под интерфейсом я подразумеваю не только умелое расположение элементов меню, а вообще его архитектуру. Скажем пользовательский интерфейс шутера заметно будет отличаться от интерфейса космосима, который я пишу. Мой таки на порядок будет сложнее. Это только часть работы дизайнера.


> А где гарантия, что багов у тебя меньше будет?

Гарантии дать никто не может, но я могу утверждать что в моем и только моем коде их будет меньше, чем в чужом коде + моем коде. Скажем если я возьму чужой двигло(скажем куплю движок HomePlanet, хотя меня он просто раздражает неправдоподобностью) и начну его сильно модифицировать(а замем мне клона делать?), то наделаю наделаю больше ошибок, бо по докам все равно мало что поймешь в целом(на полное понимание уйдут годы).


> Люди! Пишите игры - несите радость людям! И пожалуйста,
> давайте завяжем со спорами типа "OGL или D3D / С++ Delphi
> что лучше".

Заметь я нигде не упоминал про C++/Delphi и OGL/DirectX...

nexxiss ©
> Программы не пишут, ровно как, музыку не рисуют

Смеялся долго и надрывно.... :-)
Программы что - рожают? Из попы выкакивают? Или в диктофон наговаривают?

:-) Блин чуть связки не порвал со смеху.

Алекс А

> Ну и хрен. Писать игру с нуля - тоже самое, что писать свои
> Видны.

А ты как хотел? Чтобы все было просто и шоколадно? На самом деле, как я и говорил, писать с нуля проще чем переделывать готовое. Скажем так это не сложнее чем писать винды, а намного легче.


> Всё, что остаётся - это ждать когда GLScene перерастёт из
> графического движка в игровой движок, когда к нему нормально
> прикрутят, обезглючат ODE или что-нибудь подобное. И вот
> когда дождёмся, тогда будет прорыв в области игр,

Жди и надейся. Только вот такого хорошего и бесплатного чую попом не будет - слишком уж просто получится.


> и они
> посыплются как из рога изобилия.

И будут все они на одно лицо, и все они будут поэтому полным саксом так как каждая игра обязана быть чем-то особенным и неповторимым, а в твоем случае это будет просто тоже самое, но с другими текстурами/моделями.
Купил пиратку с такой игрушкой, поиграл 10 мин и понес обратно менять у барыги с легендой про "нечитаемость диска".

Огромное Кулясище

> А где ты видел программу, в которой делатели игр нажимают
> волшебные кнопочки и игра за пять минут получается? Ссылочку,
> если можно.

Нет такой. Хотя...у меня есть диск с софтом(и некоторыми движками известных игр) - там есть софт с похожим назначением.


> Человеку просто жаль потерянного времени и ненужных подробностей.
> NailMan"у бы не игры писать, а разрабатывать DirectX"ы.

Как я уже и намекал - мне не жаль времени потраченного на разработку с нуля, и скажем так я даже благодарен что не засел на DelphiX, и мой друга вовремя мне открыл DirectX(кстате по Краснову я не учился).
Что касаемоа "разрабатывать DirectX"ы" - будешь рад, но все таки разрабатывал свой NailX еще во времена моего программирования на pascal6. Я там как раз закончил на текстурировании поверхностей. После того как я засел на настоящий D3D я понял как близко пришел к его идеологии в NailX.



---
WBR, NailMan aka 2:5020/3337.13


 
nexxiss ©   (2004-06-18 12:22) [15]

NailMan:
Смеялся долго и надрывно.... :-)
Программы что - рожают? Из попы выкакивают? Или в диктофон наговаривают?
:-) Блин чуть связки не порвал со смеху.


Рад что развеселил.


 
Огромное Кулясище   (2004-06-18 13:09) [16]

Can"t stroke it - smoke it. Старая песня о главном.

Для категории А (NailMan, cyborg и Ко):
Я лишаю вас звания писателей игр. Увы, игр вы не пишете. Пишете детективы мисс Марпл, которые за вас давно написаны. Вам до писания игр ещё надо закончить свой детектив. Напишите - приходите. Жду не дождусь, когда Чебуратору дадут приз "за нововведения в графике и поразительные спецэффекты".

Лично к cyborg:
Метод DrawAlpha сделал? Нет ещё?

Для категории Я (All минус A):

Собственно, продолжайте писать игры. Вы на правильном пути. Радуйтесь, ибо вы живёте на прочной основе, оставленной нам умными предками. Почтим их память и продолжим их дело на ВЫСШЕМ уровне.


 
NailMan ©   (2004-06-18 13:44) [17]

Огромное Кулясище

> Я лишаю вас звания писателей игр. Увы, игр вы не пишете.
> Пишете детективы мисс Марпл, которые за вас давно написаны.

Не понял. Кто до нас написал то что мы пишем?
Ну как покажи мне пальцем это детектив! :-) Причем бесплатный(на Direct3D) и умеющий использовать ВСЕ и абсолютно ВСЕ фичи самого наипоследнейшего Direct3D9b. Тыкни носом меня в это чудо мысли.


> Вам до писания игр ещё надо закончить свой детектив. Напишите
> - приходите.

Куда приходите? Мы уже здесь(ты тут кстате даже не регистрен, а мы да) и никуда не собираемся сваливать.


> Жду не дождусь, когда Чебуратору дадут приз
> "за нововведения в графике и поразительные спецэффекты".

Не думаю что это есть целевое назначение Чебуратора. Это просто первая законченная игра автора.


> Собственно, продолжайте писать игры. Вы на правильном пути.
> Радуйтесь, ибо вы живёте на прочной основе, оставленной
> нам умными предками. Почтим их память и продолжим их дело
> на ВЫСШЕМ уровне.

Каком высшем уровне? На том который тебе разрешил дядя написавший за тебя основу? Ну, ну  ;-) Я конечно не спорю - те программеры, которые сделали оболочки для удобного пользования новичками, круты по определению(вам даже и это слабо сделать), но и мы не хуже их, потому что пишем то что они могут предложить+свои уникальные идеи+более заточенные, а следовательно более быстрые алгоритмы под конкретный случай жини(игру).
Конечно можно дорабатывать GLScene до более быстрой работы(оптимизация на архитектурном уровне), но глубокая доработка таких штук невозможна.

---
WBR, NailMan aka 2:5020/3337.13


 
cyborg ©   (2004-06-18 15:01) [18]


>  [16] Огромное Кулясище   (18.06.04 13:09)

:) Эк тебя прорвало. Звания мне никто не давал, облом у тебя с этим получился.


>Жду не дождусь, когда Чебуратору дадут приз "за нововведения в графике
>и поразительные спецэффекты".

Осмелюсь предположить, это зависть это чтоли?
Нововведения в графике задают такие монстры, как Близзард, Вествуд, ИД софтваре и подобные. Хоть ты лопни, по нововведениям и спецэффектам в играх ты их никогда не переплюнешь.

>Метод DrawAlpha сделал? Нет ещё?
Нет и не собираюсь делать.


 
NailMan ©   (2004-06-18 15:25) [19]

cyborg ©

> Нет и не собираюсь делать.

Наверно потому что начал изучать 3Д?  ;-)

---
WBR, NailMan aka 2:5020/3337.13


 
cyborg ©   (2004-06-18 15:39) [20]

Нет. Там минмальные систребования итак большие за счёт активной анимации, а если ещё программную прозрачность делать, то минимум 800-ый нужно будет.


 
Огромное Кулясище   (2004-06-18 15:53) [21]

>Не понял. Кто до нас написал то что мы пишем?
Ну как покажи мне пальцем это детектив! :-) Причем бесплатный(на Direct3D) и умеющий использовать ВСЕ и абсолютно ВСЕ фичи самого наипоследнейшего Direct3D9b. Тыкни носом меня в это чудо мысли.


Уже названный GLScene, также FreeWorld3D, Frustum Engine, Genesis32, Bolt3D, для Direct3D - Irrlicht (не только Direct3D), Jolt3D.

Кроме того, от спора про 3D я отказываюсь.


 
Огромное Кулясище   (2004-06-18 15:59) [22]

Возвращаемся к DirectDraw. Я не могу программировать на этой чуши. API откровенно неудачен. Меня корёбит, когда я освобождаю объект и пишу _Release. Давайте тогда писать:

for ____i := 1 to 15 do...

или ещё похлеще. Меня достало заполнять какие-то структуры, стаивть указатели на них, указывать сколько полей заполнено, каков их размер, чётное ли их количество, присутсвует ли буква "J" в названиях полей и т.д. Меня это достало.


 
cyborg ©   (2004-06-18 16:08) [23]


> [22] Огромное Кулясище   (18.06.04 15:59)

В Дельфи 6-7 релизы писать не нужно.
А насчёт достало, не пиши, если достало.


 
Огромное Кулясище   (2004-06-18 16:27) [24]

2 cyborg:

Хорошо, но тогда ни слова плохого по поводу юзанья DelphiX. Ок?


 
cyborg ©   (2004-06-18 16:33) [25]


> [24] Огромное Кулясище   (18.06.04 16:27)

Я даже буквы не сказал, не то, что слова.


 
MrAngel   (2004-06-18 16:50) [26]

Программа Virtools Dev 3.0 - как раз предназначена для разработки игр. Там всё просто. Накидал моделей, написал скрипты и играй себе на здоровье. Кстати на ней сделаны такие "шедевры" как Сайберия 1 и 2.

Это информация для тех кто хотел знать о такой проге.

Огромное Кулясище - не смеши, Genesis32 уже безнадёжно устарел. Это просто реликт какой то.

Теперь касаемо первого поста. Своего рода ответ. Моя позиция такова - НЕ РАЗРАБАТЫВАТЬ ИГРЫ ВООБЩЕ. Или разрабатывать, но принимать лишь косвенное участие в кодинге, подавая лишь идеи или сценарии. Сижу на такой позиции потому, что мне крайне не интересно будет играть в собственно разработанную игру, т.е. элемент неизвестности портит всю малину.

Но! В продолжении мысли о позиции - РАЗРАБАТЫВАТЬ ДВИЖКИ. При этом остаётся интерес к процессу программмирования. Более того, мне будет крайне интересно посмотреть на игры созданные на моём движке.

На счёт вопроса "Что лучше". Мой ответ - "Твоя голова лучше" - пиши и ответ будет ясен.

И ещё кто то тут говорил про то, что игры пишутся 5 лет и по этому они такие крутые. Господа, это не крутые игры, а долгострои. Пример крутых игр за более короткие сроки:
Властелин колец - Возвращение короля.
FarCry


 
NailMan ©   (2004-06-18 17:57) [27]

MrAngel
> Теперь касаемо первого поста. Своего рода ответ. Моя позиция
> такова - НЕ РАЗРАБАТЫВАТЬ ИГРЫ ВООБЩЕ. Или разрабатывать,
> но принимать лишь косвенное участие в кодинге, подавая лишь
> идеи или сценарии. Сижу на такой позиции потому, что мне
> крайне не интересно будет играть в собственно разработанную
> игру, т.е. элемент неизвестности портит всю малину.

А это зависит от того как ты реализовал игровой мир. Если статичный(четко по сюжету), то все понятно сразу и навсегда - игра будет тебе знакома от и до. Но вот если добавить элемент неизвестности...тобишь рандом, то все будет уже сложнее.

Скажем в Диабло(играл совсем немного)  карты всегда генерятся по разному, от-того прохождение каждый раз разное.
Можно еще более углубить систему и сделать скриптовый генератор, который будет изменять сценарий в небольших частях. Скажем на какое-то действие игрока у какого-то персонажа должно быть по сценарию какое-то действие.
При создании новой игры это действие заменяется другим. Предположим для такого персонажа есть 5-6  темплейтиков (вариантов) действий на игрока в какой-то ситуации. При генерации выбирается рандомное. А далее по цепочке на основе выбранного темплейта выбираются связаные с ним последствия. (мутно сказал конечно но идея думаю понятна). Таким образом если еще и прикорячить к изменчивому сценарию еще и рандомную карту, то будет вообще фактически каждый раз разная игра.

Я вот пока остановился на варианте генерируемой карты, тоесть каждый раз когда игрок начинает новую игру, генератор создает новую карту абсолютно непохожую по конфигурации на какие-то другие(если они есть). Скажем если в первой игре пара ключевых звездных систем рядом расположены, то в другой игре они могут быть разнесены на гораздо большие растояния и игроку чтобы продолжить проход по сценарию должен будет сначала развить свой корабль прежде чем он сможет добаться до ключевой звезды и продолжить сценарий.

Cyborg`у:
Предложенный способ изменяющейся карты очень для Чебуратора подойдет, так как конструкция твоей карты довольно прост(матричный?) на вид. Небольшая модификация(скажем написание внешней DLL-ки генератора) программы и ты внесешь элемент неожиданности при прохождении игры.


> И ещё кто то тут говорил про то, что игры пишутся 5 лет
> и по этому они такие крутые. Господа, это не крутые игры,
> а долгострои.

Причина такого долгостроя в том что до сих пор железо и АПИ не мог предоставить авторам игры полную свободу фантазии. Только последние OpenGL и Direct3D9 могут обеспечить то что задумал сценарист, ну а железячные вендоры только к этому моменту смогли предоставить миру подходящее железо. Скажем предположу что 3 года из того что делали HL2 потратили на проработку(фактически все заново писалось) физики, AI и т.д. что не очень привязано к графике. Вон даже дядя Кармак с нетерпением ждет когда появятся графические адаптеры с полноценным 64битным цветом.
В целом он прав - 32 бит не обеспечивает должного качества даже сейчас(об этом есть статьи на 3DNews.ru и IXBT.COM) из-за особенностей устройства DAC-ов видюшек.

Так что не стоит осуждать такие долгострои как D3 и HL2. Они стоят того. Я вот никак не дождусь STALKER-а. Увидя демку по телеку мне сразу понравилось исполнение игрушки. Думаю в сетнябре все таки увижу его на своем компе.

Огромное Кулясище

> Возвращаемся к DirectDraw. Я не могу программировать на
> этой чуши. API откровенно неудачен. Меня корёбит, когда
> я освобождаю объект и пишу _Release.

А в чем тогда ты видишь программирование игр? Если этого нет, то это просто "кидание компанентов на форму". Программирование тут нет.


> Давайте тогда писать:
>
> for ____i := 1 to 15 do...
>
> или ещё похлеще. Меня достало заполнять какие-то структуры,
> стаивть указатели на них, указывать сколько полей заполнено,
> каков их размер, чётное ли их количество, присутсвует ли
> буква "J" в названиях полей и т.д. Меня это достало.

Это где такое с буквой "J"?  ;-)

Мне вот чтобы написать следующее потребовалось 10 мин:

Procedure TActor.MoveTo;
Var
       i:integer;
       V,VR:PD3DVector;
begin
inherited;
FastMatrixMove(world.fMat,M);
m._41 := 0; m._42 := 0; m._43 := 0; m._44 := 1;
 For i:=0 to SlaveObjCount-1 do
  begin
     v:=@OBJ[SlaveObj[i]].World.fPOS;
     vr:=@OBJ[SlaveObj[i]].World.RPOS;
     D3DXVec3TransformCoord(v^,vr^,m);
     D3DXVec3Add(v^,v^,World.FPOS);
     FastMatrixMove(m,OBJ[SlaveObj[I]].World.fMat);
      OBJ[SlaveObj[I]].SetPos(V^);
      OBJ[SlaveObj[I]].MoveTo;
  end;

 For i:=0 to SlaveSprCount-1 do
  begin
   D3DXVec3TransformCoord(Spr[SlaveSpr[i]].world.fpos,Spr[SlaveSpr[i]].world.rpos,m);
   D3DXVec3Add(tempvec,Spr[SlaveSpr[i]].world.fpos,World.fPOS);
   Spr[SlaveSpr[i]].SetPos(tempvec);
   If Spr[SlaveSpr[i]].Animated then
     Spr[SlaveSpr[i]].Animate;
  end;

 For i:=0 to SlavePSysCount-1 do
  begin
     v:=@PSYS[SlavePSYS[i]].World.fPOS;
     vr:=@PSYS[SlavePSYS[i]].World.RPOS;
     D3DXVec3TransformCoord(v^,vr^,m);
     D3DXVec3Add(v^,v^,World.FPOS);
     FastMatrixMove(world.fMat,PSYS[SlavePSYS[i]].World.fMat);
     PSYS[SlavePSYS[i]].SetPos(V^);
   if checksync(PSYS[SlavePSYS[i]].Sync) then PSYS[SlavePSYS[i]].Update;
  end;
 BoundCollision.POS:=World.FPOS;
end;


Скажем этот метод реализует систему Link-в(потомок проиклеивется к предку и все движения совершают совместно), как в любом 3D-редакторе(скажем в 3ds max). С первого взгляда кошмар несусветный, я придумывал этот метод около часа. В самом цикле я лишь говорю Actor[i].MoveTo; и все само делается. Чё тут сложного?


> Кроме того, от спора про 3D я отказываюсь.

Да никто про holeywar 3Д АПи и не говорит.

---
WBR, NailMan aka 2:5020/3337.13


 
Огромное Кулясище   (2004-06-18 18:33) [28]

2 NailMan:

Буквально:

ZeroMemory (@ddsd, SizeOf(ddsd)); // Ладно, пускай
with ddsd do begin
  dwSize := SizeOf(ddsd);  // Нафиг надо?
  dwFlags := DDSD_CAPS; // Само не определит?
  ddsCaps.dwCaps := DDSCAPS_PRIMARYSURFACE;  // Единственная полезная здесь вещь
end;


 
wiz ©   (2004-06-18 18:52) [29]

2 Огромное Кулясище:

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

Используйте GLScene, кучу "низкоуровневых" библиотек и пишите себе на здоровье. Раздражает лишь то, что вылазит "вот такой вот Кен" и говорит, что те, кто поступает не так как он, лохи и изобретают велосипед, хотя сам не сможет за две минуты написать три классических алгоритма обхода бинарного дерева или "пузырёк".

Я не против вашей деятельности. Пишите, пойте, насвитывайте (или что там с ними делают) программы. Только не надо поддевать людей, которые пошли другим путём.

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
Огромное Кулясище   (2004-06-18 19:00) [30]

Далее:

> А в чем тогда ты видишь программирование игр?

Пользовался когда-нибудь Graphic32? Если нет, то я не смогу объяснить. Если да, то слушай. Graphic32 - это замечательная вещь. Это безупречная логика, простота и мощность одновременно. Замечательный подход - 32-битные изображения, т.е. изображения с маской прозрачности. Можно забыть про всякие ColorKey, это не нужно, это всё включает в себя такой подход.

Так вот, работая с Graphic32 я не вижу никакой проблемы залезть внутрь. Если бы надо было работать на низком уровне - пожалуйста, все удобства есть, ничто не скрыто и не недоступно. Только мне этого не требуется. Я работаю с TBitmap32 - трансформирую изображения, накладываю маски.

Я хотел сделать изометрическую игру. Увы, поле 800х600, всё заполненое тайлами давало около 25 FPS, а ещё нужны были спрайты, дома и прочее. Тогда я оставил небольшой ромбик посреди экрана - как большой тайл, т.е. выводятся тайлы не так, чтобы закрыть весь экран, а лишь квадратный кусок карты, образующий на экране ромбик. И я получил 40 FPS.

Надо было как-то загладить такую оптимизацию. Тогда я просто наложил на края выводимого ромба маску - и получил feathering, т.е. крайний тайл в изометрической проекции постепенно уходил в чёрное небытиё. Получилось очень красиво.

Я занялся стенами. Сперва я хотел использовать уже готовые изображения стен, но затем передумал. Я решил использовать проективное преобразование и просто натягивать изображение между четырьмя точками. Получилось замечательно, красиво, с antialiasing"ом. Но увы, FPS безнадёжно упал - всего 15.

Но я продолжал дальше. Надо было учесть момент, когда стена видна частично, т.е. не вся помещается на видимой части карты. Обрезать стену было бы некрасиво. Тогда я расчитал точку, в которой стена должна прерываться и добавил текстуре стены маску, подобную той, что добавлял тайлам, только маска эта могла ложить под любым углом и генерировалась программно.

Получилось обалденно красиво, но увы, FPS умер.

И вот теперь я хочу тебя спросить? Я лентяйничал? Я не работал. Я использовал всё готовое при создании этого?

============

Я не представляю, как сделать то же самое при помощи DirectDraw. Точнее знаю и пытаюсь сейчас, но задача мне представляется лишь попыткой уподобиться - придётся хранить две поверхности на один спрайт, я не представляю, как можно сделать проективное преобразование. Мне неудобно использовать DirectDraw для достижения своей высокой цели.


 
Огромное Кулясище   (2004-06-18 19:06) [31]

2 wiz:

Да, я так и буду делать, но на меня косо смотрят, более того, меня называют ДЕЛАТЕЛЕМ игр, меня называют НОВИЧКОМ (см. первый пост), причём делает это человек, который досконально не знает, что такое antialiasing (см. соответсвующую ветку, если помнишь).


 
wiz ©   (2004-06-18 19:17) [32]

PS: есть конечно способ положить конец этим спорам раз и навсегда...

По-честному пишется ТЗ (для тех, кто на бронепоезде: ТЗ = техническое задание) на некий, не очень большой, (псевдо-)игровой проект.
Что-нибудь вроде: 3d игра в жанре action или strategy, в кадре 100 активных объектов, 1000-2000 пассивных, уровень (или несколько), модельки (1k треугольников) прилагаются. Проверка на collision, взаимодействие объектов (пара-тройки видов), сохранение/загрузка, интерфейс, какое-то количество спец-эффектов (bump mapping, multi-texture, fake-shadows). А если уж совсем заморачиваться, то внести в задание возможность расширения (через скрипты или dll).

Собираются две команды, с названиями "Садо-мазо-программо-велосипедисты" и "кульные хацкеры оболочечники", и реализовывают это дело, каждый на своём. В конце замеряются fps, нагрузка на проц, min.требования, размеры игры, безглючность. Ну и открытое интернет-голосование среди непричастных (вообще не программистов. просто игроков).

Тогда сразу станет всё ясно и результат спора будет очевиден: чья игра будет иметь более высокие показатели, при одинаковом внутреннем наполнении те и выиграли.

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
wiz ©   (2004-06-18 20:13) [33]

2 Огромное Кулясище: вас называют делателями и новичками, потому что вы:

1) Пытаетесь сделать "игру" так, как проще вам, а не лучше(быстрее) для пользователя

2) Почему-то вы считаете (непонятно почему), что игровая программа проще того же DirectX"а или Word"а. Почему??? Потому что такую планку вы себе поставили.

3) Редко думаете или вообще не думаете об оптимизации.

Простой пример: "Я решил использовать проективное преобразование и просто натягивать изображение между четырьмя точками". Главное слово здесь - "просто". А о том, какая мощность алгоритма этого преобразования ты не подумал. И скорее всего ты делал это преобразование каждый кадр (интересно зачем?). И я почти уверен, что ты перерисовывал всю сцену каждый кадр... у тебя 3d с постоянно бегающей камерой или 2d, где 50-70% пикселей не отличаются от предыдущего кадра (c точностью до линейного сдвига всей картинки)? Почти наверняка я могу придумать еще пару-тройку способов оптимайза твоего дела. (Но я-то об этом думать не буду, т.к. это твой проект и твоя задача)

4) Ну и последнее. to Огромное Кулясище personal. В post[29] я предлагал вспомнить по-быстрому пару классических алгоритмов. Ты их вспомнил? Если нет, то зачем спрашиваешь про новичков? Или вспомнил? только честно...

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
Огромное Кулясище   (2004-06-20 12:14) [34]

Хотел я ответить на пост wiz"а, но увы, составленый ответ пропал из-за сбоев в работе форума. За это время я решил, что мне наплевать на философию т.н. "садомазопрограммистов" (естессно, условное название во всех отношениях). Однако в обиду я себя не дам - кто назовёт меня новичком или ламером или презрительно оболочечником, в том числе необязательно персонально, тот незамедлительно получит ответ в том же духе.


 
wiz ©   (2004-06-20 13:25) [35]

2 Огромное Кулясище: С постом - очень жаль. Хотелось услышать. Честно.


 
Огромное Кулясище   (2004-06-20 14:09) [36]

2 wiz:

А что-то я не догнал вот это:

"4) Ну и последнее. to Огромное Кулясище personal. В post[29] я предлагал вспомнить по-быстрому пару классических алгоритмов. Ты их вспомнил? Если нет, то зачем спрашиваешь про новичков? Или вспомнил? только честно..."

В 29 ничего про алгоритмы не увидел :(


 
wiz ©   (2004-06-20 15:29) [37]

цитата с поста [29]:
...за две минуты написать три классических алгоритма обхода бинарного дерева или "пузырёк"...


 
Огромное Кулясище   (2004-06-20 15:33) [38]

2 wiz:

Про обход бинарного дерева - один напишу. "Пузырёк" - очевидно сортировка "пузырьковым" методом? Тоже припоминаю.


 
wiz ©   (2004-06-20 15:38) [39]

2 Огромное Кулясище:
во-первых, а почему не три?
во-вторых, это самое простое и почти не сомневался в результате :) (в [29] посте я конечно же утрировал)


 
Огромное Кулясище   (2004-06-20 16:27) [40]

2 wiz:

Потому что кто тебе сказал, что их три. Видел недавно статью на сайте про сортировку? Ещё один новый метод. И ещё: зачем три? Или что, три дерева и каждое нужно обойти? Тогда надо использовать один и тот же несколько раз.


 
wiz ©   (2004-06-20 17:02) [41]

2 Огромное Кулясище:

>Потому что кто тебе сказал, что их три
Дональд Кнут: preorder, postorder, endorder.

>Видел недавно статью на сайте про сортировку? Ещё один новый метод
Ну раз уж зашла речь... Ты сильно обидишься, если я скажу, что он для тебя новый. Мне он известен с весны 1998 года (с курса лекций "Методы программирования" на втором курсе). (Хотя я его ни разу не применял в своей практике)

>И ещё: зачем три?
:))) как ты можешь ставить вопрос "зачем?", если ты их не знаешь...

Потому что результаты обхода разные (порядок обхода). И иногда, вместо того, чтобы городить огород, можно порыться в памяти и сделать как надо...


 
Огромное Кулясище   (2004-06-20 18:45) [42]

2 wiz:

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

Собственно, беглый поиск по Яндексу дал результат: Обход в прямом порядке, Симметричный обход, Обход в обратном порядке, Обход в ширину, т.е. уже 4.

Мне нужно было реализовать сортировку массива целых чисел в программе. Я нашёл разные алгоритмы, среди них один выделялся скоростью для некоторых усреднённых типов введённых данных, поэтому я выбрал его. Я не знаю даже примерно, каким получится массив чисел в программе и не могу выбирать - я взял то, что самое быстрое. Мне понятен его механизм действия, но я бы точно не допёр, что такой алгоритм может дать наибольшую скорость. А "пузырёк" я не стал особо запоминать, так как везде написано, что он весьма медленный.


 
wiz ©   (2004-06-20 19:28) [43]

2 Огромное Кулясище:

>...не повод для гордости...
Я разве горжусь? Ни фига я не горжусь... просто знания и опыт, это то что отделяет новичков от не-новичков.

>...беглый поиск по Яндексу дал результат...
суть не в том, что ты их можешь найти в тырнете за минуту... суть в том, чтобы они побывали у тебя в голове, обдумались и что-то осталось. В этом случае столкнувшись с некой задачей, ты сможешь придумать-"вспомнить" эффективный способ её решения.

>...они у тебя под рукой...
в том-то и дело, что у меня они не "под рукой", а в голове (по-крайней мере общие знания и где искать).

>...Обход в ширину...
Обход в ширину - более поздний алгоритм. Хотя (конечно) тоже может считаться классическим.

>...А "пузырёк" я не стал особо запоминать...
во-первых, что там запоминать. весь алгоритм объясняется в пять строчек (это вам не пирамидальная, который всё-таки требует сосредоточения при изучении).
во-вторых, хорошо бы знать пузырёк тоже. В некоторых случаях он даже эффективнее других.

-----
PS (оно же одно большое imho): Разбор показал, что тебя (с моей точки зрения) можно считать новичком. Это не "обзывательство", "принижение" или попытка "самоутвердиться за счёт других"...

Ну не знаешь ты пока многого и не знаешь. Научишься когда-нибудь.

Хотя среди своих друзей ты можешь быть "истинным корифеем" программинга (Я тебе в этом не мешаю).
-----
PPS (он же anti-offtopic): ну что? никто не решился делать сравнение "pure-coding" versus "component-using"???


 
Огромное Кулясище   (2004-06-20 21:26) [44]

2 wiz:

Ты сам гнул свою линию и свёл меня к тому, что планировал ещё в посте 29. Ещё раз - с теми алгоритмами, про которые шла речь, у меня проблем нет.

>Ну не знаешь ты пока многого и не знаешь. Научишься когда-нибудь.

Чего я не знаю?

Вот и сейчас - пример из книги Краснова работает медленнее, чем DelphiX.


 
NailMan ©   (2004-06-20 21:36) [45]

Огромное Кулясище

> Пользовался когда-нибудь Graphic32? Если нет, то я не смогу
> объяснить. Если да, то слушай. Graphic32 - это замечательная
> вещь. Это безупречная логика, простота и мощность одновременно.
> Замечательный подход - 32-битные изображения, т.е. изображения
> с маской прозрачности. Можно забыть про всякие ColorKey,
> это не нужно, это всё включает в себя такой подход.

К сожалению(или наоборот?) я сие не видел, но вот мне скажи, это все раелизуется программным путем? Если да, то вывод сделанный тобой...

> Получилось обалденно красиво, но увы, FPS умер.

Вполне логичный результат использования того что не использует аппаратной части компа.


> И вот теперь я хочу тебя спросить? Я лентяйничал? Я не работал.
> Я использовал всё готовое при создании этого?

Думаю нисколько не лентяйничал, но вот выбор того что заведомо не сможет справиться с твоими запросами и желаниями, имхо убило те труды-напряги и время которое ты потратил на вышеперечисленные тобой конструирования.
И какой бы невероятной красоты твой алгоритм рисовал бы картинку, она ничто не означает для пользователя, если он не сможет увидеть ее на удобоваримом уровне производительности.


> Я не представляю, как сделать то же самое при помощи DirectDraw.
> Точнее знаю и пытаюсь сейчас, но задача мне представляется
> лишь попыткой уподобиться - придётся хранить две поверхности
> на один спрайт, я не представляю, как можно сделать проективное
> преобразование. Мне неудобно использовать DirectDraw для
> достижения своей высокой цели.

А зачем вообще использовать DirectDraw для 2Д, если еще со времен DX7 можно все 2Д реализовать через 3Д(назовем это условно 3Д)? Со всеми прибамбасами в виде аппаратного Alpha и прочего?

Заменить спрайты можно наборами треугольников в XYZRHW(Экранные координаты) хоть с 8 текстурами на треугольник. Используй что-хочешь и как хочешь. Eсли не хочешь поиметь аппаратный lightning(имею ввиду точечные источники), то придется юзать в нормальных координатах и позаботиться об обеспечении эмуляции изометрии, посредством установки в правильном направлении камеры.


> Да, я так и буду делать, но на меня косо смотрят, более
> того, меня называют ДЕЛАТЕЛЕМ игр, меня называют НОВИЧКОМ
> (см. первый пост), причём делает это человек, который досконально
> не знает, что такое antialiasing (см. соответсвующую ветку,
> если помнишь).

Я то как раз знаю что такое антиальясинг. Так уж получилось что этот термин пришел к нам из профессиональных 3Д приложений, в которых это означало сглаживание наклонных линий в реал-тайме(при моделировании сеток). Потом термин перешел к изображениям в 3Д и означал он - сглаживание краев геометрии(наклонных краев) путем некоторых манипуляций с изображением(как правило это FSAA типа SuperSampling). То что применительно к 2Д называется антиалиасингом(тыкни меня в имя того кто ввел этот термин в 2Д) лишь технология позволяющая достичь похожего эффекта.
Чтож я не спорю что если эффекты не отличаются, то это фактически тоже самое, но не надо меня обвинять в незнании того что есть антиалиасинг.

wiz ©
> PPS (он же anti-offtopic): ну что? никто не решился делать
> сравнение "pure-coding" versus "component-using"???

Да как тебе сказать, я бы согласился бы если не мой большущий проектище, которое наконец-таки сдвинулось с места(после 2 месяцев активной фазы моей болезни и пост-реабилитации).

---
WBR, NailMan aka 2:5020/3337.13


 
wiz ©   (2004-06-20 21:53) [46]

2 NailMan: мне-то оно тоже не особо нужно... я-то уверен, что pure вариант это лучший вариант... и у меня мой проект потихоньку двигается (жаль, что потихоньку)

---
бритва Оккама: "Не создавайте сущности сверх необходимого"


 
Огромное Кулясище   (2004-06-20 21:56) [47]

2 NailMan:

Я добьюсь своего и вы ещё позавидуете своему бесцельно прожитому времени. На сим с меня для этой дурацкой ветки хватит. Избрали свой путь - сидите и молчите в тряпочку. Один опоздавший труп у нас есть (cybord и Чебуратор времён 1994), второй - готовится (miek и демка SpriteUtils 2 в 16-цветном режиме 320х200).


 
kas-t   (2004-06-20 22:56) [48]

Долго и внимательно читал этот топик. Сделал для себя вывод, что спор идет примерно о следующем: «- Я круче!
- Да нет! Мы круче, мы пишем сами!
- Да нефика Вы лохи! Потому что изобретаете велосипед!
- Мы его изобретаем, потому что ранее изобретенные велосипеды нам не нравятся!
- Ну и дураки!
- Ну мы же не виноваты что если слепить ранее изобретенный велосипед с нашим велосипедом он будет криво ездить. Поэтому изобретаем свой.» и т.п. и т.д.

А вообще общее впечатление от топика осталось такое. Что те, кто пишет на чистом Direct (в смысле без оболочек), просто хочет похвастаться перед теми, кто пишет при помощи оболочек. Кстати хочу подчеркнуть, что именно ПИШУТ при помощи оболочек! Так как не умея программировать и скачав компоненты DelphiX или GLScene (и другие им подобные), игру просто не написать. Тут вы уважаемые глубоко уже запутались в терминах гейммейкеры и программисты. Гейммекерами – я считаю тех кто потрашит уже готовую игрушку изменяя картинки, текстурки, скрипты, сюжет, а если все вместе делает просто мод к уже существующей игре. А программистов совсем не разделяет то на чем он делает игру, на базах данных или на бейсике при помощи кнопочек, или на чистом айпи, а может и при помощи оболочки. Важно во всем этом то, что он её сидит и пишет, придумывая все почти с самого нуля. Подчеркиваю почти! Но он тоже программист!

Вообще хотелось бы отдельно сказать автору топика «Не суди других, и сам не будешь судим» (с) Умный дядька и Ко.

А от себя хочу добавить, что пока NailMan напишет своего космосима, его игра уже никому не будет интересна. Так как сейчас все его новомодные спецэффекты просто устареют к релизу, как собственно и графика. К тому времени уже такие игры будут… Которые нам и не снились. Еще пять лет назад мы только мечтали о том, во что сейчас играем. Тем более если команда Valve трудится над Half-Life 2 уже пять лет. То сколько же ты (NailMan) будешь трудиться над своим проектом!? Пахнет долгостроем :)

В общем спор идет ни о чем…

ЗЫ: Всем успехов в своих проектах! Надеюсь они никогда не запылятся на ваших винтах.


 
КиТаЯц ©   (2004-06-21 07:08) [49]

2 kas-t   (20.06.04 22:56) [48]
Респект! Поддерживаю!


 
cyborg ©   (2004-06-21 09:21) [50]

Огромное Кулясище
Знаешь в чём разница между нами?
У меня есть готовые проекты, у тебя нет. Так кто из нас знает как делать?


 
NailMan ©   (2004-06-21 10:14) [51]

kas-t
> А от себя хочу добавить, что пока NailMan напишет своего
> космосима, его игра уже никому не будет интересна.

По моему игра интересна не только своей графикой, а также идеей.
Что касаемо графики - переделать с D3D9 на D3D10 мой будущий движок - дело максимум недели. Причем основное время потребует только отладка - сам процесс перехода будет в замене нескольких символов в программе.

Шейдеры естественно HLSL - тут вообще ниего менять не надо, а новые фичи - тут по желанию. Многие фичи и я вряд ли буду юзать в силу из ориентированности на ландшафтные игры.

Ну и самое главное DX10 появится не ранее Longhorn-а, а значит не ранее 2007г. Так что эффекты до того времени не устареют.


> То сколько же ты (NailMan) будешь трудиться над своим проектом!?
> Пахнет долгостроем :)

С учетом того что у меня сейчас появилось много свободного времени(после работы) в связи с окончанием ВУЗа полтора года назад, проект уже долгострем не станет.  :-)


> В общем спор идет ни о чем…

А спора то и не было, только размышления...

---
WBR, NailMan aka 2:5020/3337.13


 
VitGun ©   (2004-06-21 12:19) [52]

//Возвращаемся к DirectDraw. Я не могу программировать на этой //чуши. API откровенно неудачен. Меня корёбит, когда я освобождаю //объект и пишу _Release. Давайте тогда писать:
//
//for ____i := 1 to 15 do...
//
//или ещё похлеще. Меня достало заполнять какие-то структуры, //стаивть указатели на них, указывать сколько полей заполнено, //каков их размер, чётное ли их количество, присутсвует ли буква //"J" в названиях полей и т.д. Меня это достало.

Тогда ты не тем занялся. Сиди и лепи NotePad"ы на VCL, а не пытайся изображать из себя программера. Не тебе решать удачен API или нет. Если ты чего-то непонимаешь, то это не значит, что это плохо. Почему же тога на этом "неудачном" API написано столько игр. Или все те программисты, что их создавали - тупые, и недогадались что он неудачен? А ты разглядел и открыл нам глаза - спасибо!

NailMan
Респект


 
Огромное Кулясище   (2004-06-21 14:37) [53]

2 VitGun:

>Тогда ты не тем занялся. Сиди и лепи NotePad"ы на VCL, а не пытайся изображать из себя программера. Не тебе решать удачен API или нет. Если ты чего-то непонимаешь, то это не значит, что это плохо. Почему же тога на этом "неудачном" API написано столько игр. Или все те программисты, что их создавали - тупые, и недогадались что он неудачен? А ты разглядел и открыл нам глаза - спасибо!

Ок, а ты изображай из себя программера. Давай! Заполнил кучу ненужных полей - и сиди, гордись тем, какой ты умный программер.


 
wiz ©   (2004-06-21 15:01) [54]

2 Огромное Кулясище к посту[53]:
post[47]>...На сим с меня для этой дурацкой ветки хватит...

А зачем тогда вернулся? На данный момент твои речи превратились в невнятную истерику... Если есть аргументация своей позиции - выкладывай. Нет, тогда нечего тут на всех наезжать...

nailman, cyborg свои "вещественные доказательства" уже показали...
я тоже (лежат на http://gnar.fatal.ru - pure-openGl)

теперь твой ход...


 
wiz ©   (2004-06-21 15:26) [55]

ко всем (как бы anti-offtopic):

Возник вопрос-опрос: как мы все понимаем, создание игры "в домашних условиях" может преследовать разные цели. Тут может быть и программеский рост, и наполнение своего портфолио, преследование выгоды ("коммерческого успеха") или желание самоутвердиться [в школе/на факультете/среди друзей/на форуме delphimaster :)], в конце концов попытка занять себя тихими зимними вечерами.

Скорее всего у создателя цель не одна, а несколько. И очевидно, что приоритеты у каждой из них - свои.

Так вот, собственно вопрос: "Расскажите (в двух словах), какую цель преследуете вы?" (или "Зачем вы этим занимаетесь?")
-------------------------
как зачинщик, отвечаю первым :)

Зачем я занимаюсь своим проектом:

1.(50%) Никогда ранее не занимался разработкой игр, хочу узнать - смогу ли я "сделать" игру (от начала до конца).

(За свою небольшую жизнь уже занимался ГИС, кучей численных методов, real-time обработкой сигналов, и еще бог знает чем, а вот играми - никогда)

2.(30%) Признание/Коммерческий успех.

(Конечно, хочется сделать игру не какой-нибудь, а на уровне... и единственная объективная оценка качества игры - появление людей, которые будут согласны выложить за неё свои деньги)

3.(20%) Способ занять себя тихими долгими вечерами + способ завести новые знакомства (причём не просто так (это можно и на улице сделать), а с людьми-единомышленниками).

(В конце-концов, написание игры - дело увлекательное, приносит радость и удовлетворение (особенно в том случае, если удаётся написать красивый алгоритм-решение), и ничем не хуже (а imho даже лучше) собирания марок или поиск и распитие новых сортов пива)

----------------
господа, прошу высказываться :)


 
Огромное Кулясище   (2004-06-21 15:29) [56]

2 wiz:

Собсна, какой ход, когда мне не на чем писать? Ну хочешь, пойду к другу, откомпилирую у него тот же Irrlich с какой-нибудь моделью, но вам это надо?

2 cyborg:

Знаешь в чём разница между нами?
У меня есть готовые проекты, у тебя нет. Так кто из нас знает как делать?


Знаешь, пожалуй у меня найдётся в закромах какой-нибудь старый проект, про который можно сказать то же, что и про Чебуртора говорят, например, на ListSoft (http://www.listsoft.ru/programs/13163/):

"Главный герой почему-то как какашка ходит. То есть похож на какашку. Весь такой маленький и коричневый. И не шагает а переваливается.".


 
VitGun ©   (2004-06-21 15:49) [57]

2 Огромное Кулясище.

> Ок, а ты изображай из себя программера. Давай! Заполнил
> кучу ненужных полей - и сиди, гордись тем, какой ты умный
> программер.

Если эти "поля", как ты выразился, не нужные то зачем их тогда сделали. Я программера из себя не изображаю...я и есть программер...Я не жалуюсь, что вот это я не буду кодит потому что там сложно или много полей. Я просто делаю...

"Если звезды зажигаются, значит это кому-то нужно" (С) А.Д"Сен Экзьюпери.


 
wiz ©   (2004-06-21 16:10) [58]

2 Огромное Кулясище:

>Собсна, какой ход, когда мне не на чем писать?...
>...но вам это надо?
>Знаешь, пожалуй у меня найдётся в закромах какой-нибудь старый проект...

Когда я был моложе, мы это всё называли "дешёвыми отмазами"...

Или у тебя есть проект (alpha/beta/release - не важно), и тогда мы можем посмотреть и понять какие мы тут пылинки в сравнении с тобой, или нет, но тогда ты зелёный новичёк, занимающийся рукомашеством от безделья...

А пока... можешь сколько угодно говорить про cyborg"а, но ты пока даже "какашек" не умеешь делать... Или умеешь? (Только не надо тут: "Я умею, тока не буду, ибо нафиг делать какашки?" <- сие есть просто еще одна дешёвая попытка отмазаться)


 
cyborg ©   (2004-06-21 17:12) [59]


> [56] Огромное Кулясище   (21.06.04 15:29)


:) А теперь посмотри на имя написавшего тот пост и дату, посмотри его сайт.

До моей какашки тебе ещё долго испражняться придётся.

Хотябы мои примитивные танчики осиль.
За них дерутся там :) http://www.panvasoft.com/rus/1757/


 
Огромное Кулясище   (2004-06-21 17:14) [60]

2 wiz:

Выкладываю (час времени нужен)...


 
Огромное Кулясище   (2004-06-21 17:22) [61]

2 cyborg & wiz:

Пожалуста, Танчики так Танчики. Проект делался неделю и даже меньше.
http://www.hot.ee/mvps15/Tanks.rar [370 Kb, WinRAR 3.30]


 
Огромное Кулясище   (2004-06-21 17:24) [62]

Псст... стрелки - ехать. Мышкой стрелять.


 
NailMan ©   (2004-06-21 17:36) [63]

[28] Огромное Кулясище
with ddsd do begin
 dwSize := SizeOf(ddsd);  // Нафиг надо?

Потому что в разных версиях размер этой структуры может быть разным.
Скажем в следующей версии добавили несколько полей, а структура одна и таже. Как распознать что это более "свежая" по фичам структура? Размером.
Условно говоря когда ddraw получает указатель на эту структуру он читает его размер и определяет его как "свой".

 dwFlags := DDSD_CAPS; // Само не определит?
Нет. Все зависит от того что ты хочешь подсунуть и с каким режимом.

 ddsCaps.dwCaps := DDSCAPS_PRIMARYSURFACE;  // Единственная полезная здесь вещь
Тоже самое. Если ты не укажешь, то не получишь или получишь INVALID_CALL.

В случае с DDraw/D3D, они полагаются на программиста. От его совести и желаний. Что сказал то и получил.

---
WBR, NailMan aka 2:5020/3337.13


 
cyborg ©   (2004-06-21 17:39) [64]

Это игра? Ничего не играет, ездит танк и стреляет. 28 кадров в секунду при 100% загрузке 800 мегагерцевого процессора.
Для сравнения у меня Чебуратор кушает 20-25%, обрабатываемых объектов там на два порядка больше будет.


 
wiz ©   (2004-06-21 17:47) [65]

2 Огромное Кулясище: увидел твой "проект"...

дай три часа времени... вернее три часа и 14 минут...


 
Огромное Кулясище   (2004-06-21 17:54) [66]

2 cyborg:

И тем не менее ты кушаешь. FPS 30 - вполне нормально, к тому же - оконный режим, к тому же - 32-bit"ный режим, а значит при наличие времени на рисование можно сделать ещё красочнее, можно сделать переход между тайлами по маске (он реализован в редакторе, но руки не дошли), а это - любая поверхность. Кроме того, подсветка от взрыва (альфа-блендингом то небось не балуешься?) достигается специальным объектом-слоём с определённым временем жизни, а значит многие эффекты уже реализованы и ждут графики. От этой демки до игры - рукой подать, графика уже сделана, танки катаются, стреляют, ракеты попадают и взрываются. Дело за нудным - написать AI и объекты.


 
Огромное Кулясище   (2004-06-21 17:56) [67]

2 wiz:

Давай. На DirectDraw c нуля. Вращение, блендинг - всё сам.


 
wiz ©   (2004-06-21 18:06) [68]

2 Огромное Кулясище: DirectDraw - не люблю, так что буду писать на openGL. всё с нуля


 
Огромное Кулясище   (2004-06-21 18:10) [69]

Давай, а то тебе себя подтвердить нечем - твоя страничка не открывается.


 
cyborg ©   (2004-06-21 18:11) [70]

[66] Огромное Кулясище   (21.06.04 17:54)

У меня фиксировано 33 кадра, остальное время отдаётся системе.

Судя по этому посту видимо ты до сих пор не понял чего должен достигать программист. Он должен смотреть вперёд, просчитать "расклад", когда твоя игра будет доделана, её никто играть не будет, потому, что системные требования никуда не будут годиться для такой игры, у тебя ещё ничего нет, а уже тормозит. А когда поедет несколько противников, начнут стрелять, то моего процессора тут явно будет не хватать.


 
Огромное Кулясище   (2004-06-21 18:12) [71]

И собсна, для справедливости ради меня - не юзай glRotatef.


 
wiz ©   (2004-06-21 18:13) [72]

2 Огромное Кулясище:
только что пробовал - всё тип-топ.

итак, я поел, покурил и только что запустил delphi


 
wiz ©   (2004-06-21 18:14) [73]

2 Огромное Кулясище: интересно почему я не должен юзать то, что забито в чип моей и твоей видеокарты???


 
Огромное Кулясище   (2004-06-21 18:15) [74]

2 cyborg:

И что ты предлагаешь? Отказаться от взрывов, отказаться от подсветки? Тогда бы я использовал DelphiX и был бы точный клон твоих Танчиков.


 
Огромное Кулясище   (2004-06-21 18:18) [75]

>интересно почему я не должен юзать то, что забито в чип моей и твоей видеокарты???

Ню-ню, юзвай, юзвай... токмо FPS не потеряй.


 
Darthman ©   (2004-06-21 18:19) [76]

2 sin и cos вычисления для координат вершин полигона просчитать совсем недолго, так что можно и без ротейта сделать немедленнее.


 
cyborg ©   (2004-06-21 18:20) [77]


> [74] Огромное Кулясище   (21.06.04 18:15)

Я предлагаю писать быстрый код.


 
Огромное Кулясище   (2004-06-21 18:24) [78]

2 cyborg:

... но некрасивый?

2 all:

Как вам вообще холи-вар?


 
Darthman ©   (2004-06-21 18:24) [79]

cyborg:
Отличное предложение, кстати :)


 
Poison man   (2004-06-21 18:32) [80]

Н-да! Размышления хороши... Со многими согласен, со многими нет... Однако, возможно, вам будет интересно выслушать мнение человека, который ПЕРЕХОДИТ с облочки GLS на OGLAPI...
Так вот... ГЛС - вещь неплохая. Из оболочек, которые я видел, эта - самая лучшая (имхо). К тому же бесплатна.
Однако, недавно мне потребовалось написать к ней примочку - на огл, чтобы кое-чего побыстрей работало... Я написал Это на огл. Получилось. Попробовал замутить прогу на огл. Небольшую. С движущимся кубом. Тоже получилось. Попробовал считать файл макса 3дс - получилось. И я подумал - КРУТО! Когда что-то пишешь сам, всегда нравится больше! Я перехожу на АПИ. Еще не решил какое - D3D или OGL... Но это дело времени. Вот.
Но нисколько не хочу приуменьшать достоинства GLS.

Не судите строго.


 
Darthman ©   (2004-06-21 18:35) [81]

Poison man:
Кстати. Натолкнул на мысли.
Мы когда EvenStar начинали делать, я все начал на PowerDraw делать. Удобен, нравится он мне... нехватает многих вещей только. Поэтом чуть позже не долго думая начал писать свой движок на OpenGL. Возможно скоро займусь и Direct3D (для общего образования, так сказать)


 
wiz ©   (2004-06-21 21:03) [82]

ну вот оно - три часа 14 минут... как говорится - найдите 10 отличий

http://gnar.fatal.ru/pro.zip
(~200Kb)


 
wiz ©   (2004-06-21 21:21) [83]

да... на самом деле не хватило 15 минут на одну простую фишку - трэки от гусениц. получите:

http://gnar.fatal.ru/pro2.zip
(~200Kb)


 
wiz ©   (2004-06-21 21:24) [84]

2 Огромное Кулясище: что-то не слышу отзывов... ты заснул?


 
Огромное Кулясище   (2004-06-21 21:51) [85]

Не качает :(( (чесно)
Перезалей на:

ftp.hot.ee
login: mvpselite
password: zxcvbnm

ссылку можно построить по принципу:
http://www.hot.ee/mvpselite/filename.ext

Хотелось бы исходники тоже посмотреть.


 
cyborg ©   (2004-06-21 21:56) [86]

[83] wiz ©   (21.06.04 21:21)
Монстр ;)


 
wiz ©   (2004-06-21 22:04) [87]

2 Огромное Кулясище: а вот у меня на hot.ee не лезет... что делать будем?


 
Огромное Кулясище   (2004-06-21 22:21) [88]

2 wiz:

Точно не лезет? Я когда лезу, жду 50 секунд, где-то. Если никак, то залей куда-нибудь ещё (только не на Народ).


 
Zeqfreed ©   (2004-06-21 22:30) [89]

2Wiz: Класс! =)

Практически все идентично (включая fps, причем думаю wiz не далал оптимизации), НО:
у wiz`а вращение... думаю сам(о) заметил(о) (2 Кулясище) и ударение снарядов о стену и ещё у Кулясища скроллы в окне (ну по крайней мере у меня) такие противные создаются... вот. =)

2All:
Да, почитал я эту ветку... начались споры кто круче, кто моднее, хотя "всего-то" хотели пофилософствовать. Лично я согласен с NailMan, Wiz, Cyborg (и всеми кто с ними согласен) (надеюсь правильно уловил вашу основную мысль). Я ни в коей мере не принижаю тех, кто юзает чужие и готовые средства, каждый делает так как хочет, умеет, любит и может! Но лично я перестал бы себя уважать, если бы делал свои проекты (пока назову это так) используя какие-то странные чужие наработки отнимающие у меня всю прелесть настоящего геймдевелопинга. И мне намного приятней и интересней все делать самому, имея неограниченные просторы для моей мыслИ, чем юзать что-либо по определению ограниченное (оболочки).


 
Zeqfreed ©   (2004-06-21 22:32) [90]

2Кулясище
если ты онлайн, то могу тебе предоставить (в течении 10 минут жду) услуги своего харда (доступ по ftp)!

2Wiz, что только не сделаешь ради справедливости! =)


 
wiz ©   (2004-06-21 22:38) [91]

2 cyborg: больше всего устали руки (вернее пальцы)
2 Zeqfreed: fps - можно наверное выжать и больше... я делал всё на стандартном TTimer


 
Zeqfreed ©   (2004-06-21 22:40) [92]

2Wiz:
э.. я тут скачал со следами, fps не изменился... частицами вроде реализовано да?

2Кулясище:
Ну где же ты?


 
Огромное Кулясище   (2004-06-21 22:46) [93]

давай


 
wiz ©   (2004-06-21 22:48) [94]

2 Zeqfreed: нет... это спрайты (только немного хитрые)


 
Zeqfreed ©   (2004-06-21 22:49) [95]

ftp://81.91.48.138/pro2.zip


 
Огромное Кулясище   (2004-06-21 22:50) [96]

качаю


 
cyborg ©   (2004-06-21 22:53) [97]


> fps - можно наверное выжать и больше... я делал всё на стандартном
> TTimer

У меня 100 кадров (видеосинхронизация), занимает 2% процессорного времени. Видео ГФ фх5200. Мои сегодняшние наработки в 3Д тоже 2% занимают, правда там всего два треугольника крутится :).


 
Огромное Кулясище   (2004-06-21 22:53) [98]

2 wiz:

fps 1, отсюда танки не двигаются и не страляют :(. Видать, Graphic32 побыстрее OpenGL будет.


 
Zeqfreed ©   (2004-06-21 22:57) [99]

Если кто-то захочет скачать и несможет скачать с фатала милости просим: http://www.siteon.myfreehost.biz/pro2.zip

2Кулясище:
Как-то все подозрительно... очень


 
kas-t   (2004-06-21 23:00) [100]

to wiz: Посмотрел демку с танчиками. Понравилось. Даже больше чем твой проект :). Даже не знаю почему :). Замечание, правда, по поводу движения танка. Обломало как-то немного. Жмешь "вперед" (w) едет, отпускаешь "вперед" (w), а он скорость не снижает.

А вообще такое и на оболочке (например GLScene) не так уж и долго писать :).

to all coders: Интересно бы было посмотреть анимацию 3д модели собственного формата подобную md2 или md3. Вот где настоящие испытание программисту. А это все то чем вы тут занимаетесь - ерунда.


 
wiz ©   (2004-06-21 23:01) [101]

2 Огромное Кулясище: исправь драйверы openGL... и скажи какая видюха... у народа идёт и идёт быстрее :)))


 
cyborg ©   (2004-06-21 23:02) [102]


> [89] Zeqfreed ©   (21.06.04 22:30)
> (надеюсь правильно уловил вашу основную мысль). Я ни в коей
> мере не принижаю тех, кто юзает чужие и готовые средства,

Дело не в  том, что чужие, а в том, что только своё даёт возможность вдохнуть полной грудью и сделать что хочется. У сторонних движков будет нехватать многих возможностей, нужных для твоей конкретной игры. В качестве обучения "как делать игры" сторонние движки подходят, но на нормальный проект они не годятся. Я Танчики на движке Jedi-SDL сделал, всё просто, легко, но там всё скрыто, так и не удалось получить мне хендл моего окна, может и есть такая возможность там, но я не нашёл, из за этого был большой затык.


 
Zeqfreed ©   (2004-06-21 23:06) [103]

2Cyborg:

"Но лично я перестал бы себя уважать, если бы делал свои проекты (пока назову это так) используя какие-то странные чужие наработки, отнимающие у меня всю прелесть настоящего геймдевелопинга."

"И мне намного приятней и интересней все делать самому, имея неограниченные просторы для моей мыслИ, чем юзать что-либо по определению ограниченное (оболочки)."


 
wiz ©   (2004-06-21 23:06) [104]

2 kas-t: это всего лишь клон... в оригинале было сделано так... я так и оставил (хотя конечно силу трения ввести - пара пустяков)


 
Murkt ©   (2004-06-21 23:28) [105]

2 NailMan, cyborg, wiz

Я вас понимаю ;)

2кулясище и компания

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


 
Огромное Кулясище   (2004-06-21 23:57) [106]

2 wiz:

Увы, ты прогорел. Моя программа быстрее твоей, хотя бы на моём компе, а в своём ТЗ (выше в ветке) ты предлагал бороться именно за скорость. Так чты, сегодня ты в пролёте.

На своём компе я могу играть в RA, в Quake 2, а в твои Танчики - нет. И всё тут, на мой комп чур не обижаться.

2 Murkt:

Во-первых, сам ты кулясище. Я - Огромное Кулясище. Во-вторых, компании у меня в этой ветке практически нет. А не пониманиешь нас - ничего удивительного. Слишком силён застой.


 
wiz ©   (2004-06-22 01:05) [107]

2 Огромное Кулясище:

я боролся за время... твоё лучшее творение (ну а зачем было показывать нам не лучшее) повторяется за 3 (повторяю три) часа...

то, что оно лично у тебя на машине идёт медленнее - кривость настроек или непомерная слабина машины (извините, но я не буду специально выпендриваться ради S3trio или даже RivaTNT... GeForce-2Mx стоит на рынке 700р => доступен каждому любителю игр).

На моей машине твоя вещь 75fps, моя 100fps.

ТАК ЧТО СЕГОДНЯ ТЫ В ПРОЛЁТЕ :)))))))))))))))


 
wiz ©   (2004-06-22 01:07) [108]

PS: (2 Огромное Кулясище: можешь даже не отмазываться... проигрывать нужно тоже уметь)


 
Murkt ©   (2004-06-22 08:54) [109]

>Во-первых, сам ты кулясище.
я не Кулясище, я его друг.

>Во-вторых, компании у меня в этой ветке практически нет.
Ну единомышленников, какая разница. И не обязательно в этой ветке. Просто по этому вопросу.

>А не пониманиешь нас - ничего удивительного. Слишком силён застой.
Вот ты понимаешь - я, конечно, разумею, что написать классную игру с нуля, а тем более в одиночку (ну пусть даже трое - программист, художник/моделлер, "композитор") - очень сложно. НО есть примеры таких игр. Например - "Казаки". Да, делалось компанией GSC Game World. В составе команды программист, художник. Ну и звуки им еще кто-то делал (дал?). Все. И я нисколько не верю, что тот же NailMan, или wiz - худшие разработчики. И они - именно они, а не ты - в состоянии написать игру, которая будет интересной, или хотя бы затягивающей.


 
kas-t   (2004-06-22 09:42) [110]

Айпишникам совсем не обязательно гнуть свои пальчики перед оболочниками. Это их крутыми не сделает. А как раз наоборот. Я почитав эту ветку потерял уважение. Которое нарастало читая другие ветки и смотря их труды. А в частности это именно айпишники.

Научились писать на чистом айпи. И что? Пупы земли? Если вам так нравится, пишите, никто вам не мешает. А если другим нравится использовать оболочки, это их дело. Пусть используют.

О вкусах как и о интересах глупо спорить.

ЗЫ: Кстати я заметил, что те, кто в одиночку направляют свои силы на создание собственного движка, получается неплохой движок, но как раз на самую важную составляющею игры, графику, у них времени не остается. Соответственно графика немного хромает. Смотрел много проектов на различных оболочках DelphiX, PowerDraw, GLScene, большинство очень красивых игр. А те, которые написаны на api, не на столько впечатляют по графике. Но приятно, что с нуля сами написали.


 
wiz ©   (2004-06-22 11:20) [111]

2 kas-t:
>...Айпишникам совсем не обязательно гнуть свои пальчики перед оболочниками...
Целиком и полностью согласен. Этот спор давно уже пора прекращать. Если внимательно приглядеться, то в post[29] я как раз предлагал его закончить и больше не задевать друг друга :)

(Лично моё загибание пальцев было только естественной реакцией на резкие высказывания одного человека. По правильному я должен был сказать: "Почему это я должен доказывать, что я не верблюд? Для начала вы докажите, что я - он самый." и тихо уйти, но что-то взыграло и захотелось таки доказать, что не верблюд и не тюлень, а программер)

>...графику, у них времени не остается...
Зато, при правильном подходе, наличием неплохого движка можно заинтересовать (знакомого?) профессионального дизайнера (что делаю сейчас я).


 
NailMan ©   (2004-06-22 13:41) [112]

Н-да, демка Огромного Кулясище на моей рабочей тачке(полностью интегратная i815) дала 25 fps, а Wiz-овская 2 fps. :-(

Чтож вполне логично - сей интеграт нихрена не умеет. Посему дома на нормальном железе посмотрю. На i815 даже моя демка GUI еле запускается - 36 fps кажет, хотя на самом деле не более 8-ми, а настоящая технодема движка даже не запускается(AV какой-то выдает) - вобщем на таком говне сравнивать даже нет смысла.

ЗЫ:
Что вот не понравилось в демке Огромного Кулясище - управление танком очень странноватое, скажем даже глючноватое(стрелки которые).

---
WBR, NailMan aka 2:5020/3337.13


 
Огромное Кулясище   (2004-06-22 15:17) [113]

2 wiz:

Оглядывая пост NailMan"а хочется сказать - вот видишь. В посте 107 ты попытался отчаяно продвинуть теорию о том, что я, дескать, выложил самое лучшее, что у меня было.

Ещё раз. Будь у меня карта, поддерживающая Direct3D, я бы продолжил программирование на том же PowerDraw и не было бы меня в этой ветке.

Может быть карты нынче и дешёвые, но я не собираюсь покупать на своё старьё ещё и старую видеокарту, лучше уж новый комп сразу со всем.

Так карта, которая у меня (ATI Rage IIC AGP 1998 или 1999-ого) в своё время была так же дёшева, как и сейчас и многие фирмы по умолчанию ставили их на комплекты компов.

Кроме того, подумай сам. Паршивые танчики-2D и требуют GeForce. Теперь понятно, какой подход ты используешь, а ещё обвинял меня в пренебрегании к пользователю и его возможностям.


 
Огромное Кулясище   (2004-06-22 15:21) [114]

2 NailMan:

Управление идёт по принципу одной игры про танчики и многим может показаться непривычным, хотя точно так же мне было тяжело играть в танчики cyborg"а. Суть в том, что стрелки влево-вправо вращают танк, стрелка прямо - увеличивает скорость, стрелка назад - сбавляет скорость. Там, собственно, две скорости.

2 all:

В общем, я уже переспорил NailMan"а (список движков он получил), cyborg"а (собственно, с ним особо не спорили) и wiz"а (с его медленной игрой). Кто ещё хочет?


 
wiz ©   (2004-06-22 16:04) [115]

2 Огромное Кулясище:

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

>...Паршивые танчики-2D и требуют GeForce...
Да... Паршивые танчики-2D требуют видюху, которую уже не во всяком магазине на продажу найдёшь, т.е. старьё она требует :)... И использует это старьё едва ли на 10%.

Тем более я не думал об оптимизации... я выполнял задачу за три часа :)

Так что... на моей старенькой видюхе (GF-2mx) и моем стареньком компе (P-III тоже далеко не везде уже можно купить), я тебя сделал...

А то что ты об этом думаешь... Меня честно говоря - не волнует. Предлагаю прекратить этот беспредметный спор.

Всё равно ты нифига не понял, а я (в конце-концов) не подряжался тебе это объяснять...

---
DIXI


 
Огромное Кулясище   (2004-06-22 16:28) [116]

2 wiz:

Как же тебя это не волнует, когда ты продолжаешь нападки?


 
Огромное Кулясище   (2004-06-22 16:52) [117]

2 wiz:

Слухай, а зачем ты всё-таки писал эту свою прогу?


 
NailMan ©   (2004-06-22 17:42) [118]

Огромное Кулясище

> В общем, я уже переспорил NailMan"а (список движков он получил)


Уже названный GLScene
Все так с нетерпением ждут когда же его сделают безглючней(в форуме каждый день появляются ветки типа "GLScene GLNavigator косяк. Кто сталкивался?" и вообще неподходящий под мои соображения о конструкции.

также FreeWorld3D
Что-то смутно знакомое(посмотрю сегодня на диске с кучей движков разных) что это такое. Так сказать вспомню.

Frustum Engine
Интересно - для космосима он канает?

Genesis32
Это уродище я наблюдал в действии. Кривая графика типа Quake2, но очень своеобразная. Та версия что я пробовал была необычайно глюкава даже на очень простой карте. Соответсвенно для космосима полный нуль.

Bolt3D
Тоже видел. Не понравилась производительность.

для Direct3D - Irrlicht (не только Direct3D)
Ключевые слова выделены. Мне надо только под D3D9 и никаких универсалов.

Jolt3D
Чессно говоря не слышал.

Нисколько ты меня не переспорил.

Что касаемо


> Ещё раз. Будь у меня карта, поддерживающая Direct3D, я бы
> продолжил программирование на том же PowerDraw и не было
> бы меня в этой ветке.
>
> Может быть карты нынче и дешёвые, но я не собираюсь покупать
> на своё старьё ещё и старую видеокарту, лучше уж новый комп
> сразу со всем.

Вот это ключевые слова в споре(который тут наметился). Разработчик игр(скажем так который ориентируется на коммерческие игры) обязан иметь самое современное железо и писать игры под сегодняшние мейнстримовые(среднестатистические)  компьютеры. Скажем так Cyborg писал Чебура из расчета что программа будет работать на аналогичном компьютере(с некоторой корелляцией назад) или выше. Я считаю он обеспечил производительность на высшем уровне на подобной машине(P3-800).

Думаю Wiz написал танчики тоже из расчета на свою машину и естественно не ориентировался на машины с настолько древними видеокартами, которые вообще не умеют 3Д(коей является твоя АТИшка) ни в одном варианте(d3d, ogl).

Я вообще не понимаю под какое поколение компьютеров пишешь игры ты имея такое железо?

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

Скажем я пишу UT даже не под карты касса GeForce256/GeForce2. Конечно можно будет запустить на них игру, но качество и скорость пострадает на 80%.
Всякие карты не умеющие HW TnL вообще не будут поддерживаться и на компах с такими раритетами игрушка не запустится.

---
WBR, NailMan aka 2:5020/3337.13


 
wiz ©   (2004-06-22 18:01) [119]

2 NailMan:

В своём проекте я ориентируюсь на P3-800(-1200) и видюшку GF-2mx. Насколько я представляю ситуацию, на данный момент эта конфигурация - low-end машин игрового класса.

Когда у меня будет "почти законченное" изделие (для low-end машин), я скорее всего переключюсь на P4-2000+GF-FX (современный середнячок. Вот он, стоит рядом на столе - пылится) и попытаюсь реализовать некоторые "новомодные фишки" (в графике/звуке/еще чём-то), которые будут опционально включаться/выключаться игроком.


 
Огромное Кулясище   (2004-06-22 18:38) [120]

2 NailMan:

Хорошо тебе, взрослому дяденьке говорить.
http://www.hot.ee/mvps18/isp.txt
Больше я с вами не разговариваю пока вы не научитесь останавливать свои мысли, какими-бы вы мастаками не были, с понимать других.


 
Darthman ©   (2004-06-23 14:37) [121]

Огромное Кулясище:
>>Так карта, которая у меня (ATI Rage IIC AGP 1998 или 1999-ого) в     с воё время была так же дёшева, как и сейчас и многие фирмы по умолчанию ставили их на комплекты компов.
>>Кроме того, подумай сам. Паршивые танчики-2D и требуют GeForce. Теперь понятно, какой подход ты используешь, а ещё обвинял меня в пренебрегании к пользователю и его возможностям.
Я бы сказал так: Если игра будет написана с учетом того, чтобы работать замечательно на Rage, то только те у кого Rage и будут в нее играть ("напиши программу, которой сможет пользоваться даже дурак, и только дурак ей и будет пользоваться" (С))
А те, у кого сегодняшний меинстрим, или даже лоуэнд (PIII 1000/GF4MX) наплюют, поскольку она не будет использовать ресурсы их компьютеров и соотвественно не будет достаточно красивой. Исключение - игра должна быть очень интересная... и то оч. многие отвернуться только глянув на устаревшие скриншоты.
Что тебе не понравилось в танчиках Wiz я непонял. У меня оно почти на 1000fps тянет, в то время, как твое затыкается уже на 500х.


 
Meshalo   (2004-06-23 17:13) [122]

Замечание по поводу графики, скорости и прочих FPS"ов:
есть замечательная игра Генерал, так там ничего этого нет, а игра затягивает.


 
cyborg ©   (2004-06-23 18:13) [123]


> [122] Meshalo   (23.06.04 17:13)

Мне не понравилась, да я и не понял чего там делать конкретно нужно было :).


 
Darthman ©   (2004-06-23 18:54) [124]

Дело вкусов. Меня тоже не проперло.


 
DeadMeat ©   (2004-06-23 18:58) [125]

А чё за игра та... Это случаем не из серии C&C...
Если да, то ИМХО красивее стратегии я ещё не видел...

---
...Death Is Only The Begining...


 
некто   (2004-06-23 19:03) [126]

>И вот когда дождёмся, тогда будет прорыв в области игр, и они посыплются как из рога изобилия.

Тогда появилась бы уйма крутых игр и все бы охладели к ним
все равно если бы каждая старана нашла по огроооооомному запасу золота разве тогда бы нужно было комуто это золото если каждый мог укладывать им полы у себя в ванне.(C)Мясник

>Ну и хрен. Писать игру с нуля - тоже самое, что писать свои Видны.
"А чего бы вам ещё заодно не написать и свою Виндос ? Это будет ещё труднее, но как вы говорите, разве ни в этом заключается сам процесс ?"(С)Кен
"Не люблю писать свои винды"(С)Кен

Нет, не все равно.

"и понимать других"
Над собой не задумывался.

"Осуждают то, чего не понимают." (С) Квинтилиан
NailMan, wiz, cyborg прошли через это. Если нет - то это еще лучше. Сожалею о том, что начал не с чистого API.

"Все сказаны слова"(С)Ария

"Ты ждал, что друг тебя поймет
Поймет и скажет: "Жми вперед!"
Но друг блуждал среди собственных стен..."(С)Ария

Глупо поддерживать этот спор. Зачем? Вам нравится поливать друг друга грязью? Вам нравится "меряться пиписьками"(С)?
Каждый останется при своем мнении.
Уже создана куча веток на эту же тему. А вывод - никто никого не слушает, не пытается понять. То, что написано в этой ветке уже через жопу, можно прочитать в других ветках в более удобоваримом виде.
Люди, с кем вы спорите. Зашел человек на форум, даже не зарегистрировался... А вам это надо??? за три часа 29 минут можно было заняться более полезными делами.


 
D@rk   (2004-06-25 02:45) [127]

А вам не кажестся что вы отклонились от темы на ПРИЛИЧНЫЙ градус !!
Поднимите голову вверх и прочитате там вопрос "ЗАЧЕМ МЫ ЭТИМ ЗАНИМАЕМСЯ !!!"

Прочитав начало топика Nailman"a я подумал что неплохая наверно ветка, человек мычат свой проект и вдруг решает узнать а зачем люди вообще КОДЯТ(Это лично мое понимание вопроса), но под конец он совершил ошибку выразился так что его вопрос мог быть истолкован "А нафиг мы все рожаем ежа на API, когда есть куча движков"(Сразу говорю я не считаю, что Nailman хотел задать этот вопрос), особенно про садомазо - он лихо завернул )  !
Знающий народ то понял, но почва была полита и почти сразу взошли семена типа Кулясища(Ну и имечко !!) и полетело ...
Все помнят ветку "Так в чем же..." ?
Ну так вот это вторая часть "Так в чем же 2"
И я только - что просмотрел премьеру этой малобюжетной комедии :)
Изменились токо имена
Вместо меня и Namo, WIZ и Nailman
Угадайте с трех раз Кто вместо кЕНА ...

Хочу высказаться по теме. Я занимаюсь кодингом:
ПОТОМУ ЧТО МНЕ ЭТО ИНТЕРЕСНО.
Я не коротаю так вечера, коротать можно и за книгой и поиграться можно. Я не собираюсь выходить на улицу и кричать смотрите какой я крутой проггер. МНЕ это просто интересно.

Лично меня никогда не тянуло юзать всякие левые движки. Когда пишешь что - то серьезное то на мой згляд лучше писать на Api

Всякие Vcl и иже с ними созданы для УДОБСТВА !

Простой пример сегодня утром в кабинете информатики задание написать простую спрайтовую анимашку на Дельфи, и что надо было выпендриваться с API ? Нет я за 5 мин зделел все через Imagelist. Я Ламер ? Я КЕН ? Я Кулясище ?! Нет я просто поюзал VCl по его прямой надобности но когда я пишу что - то серьезное и долгое то я пишу это на API потому что ИМХО единственный способ сотворить стоющую игру это начать ну не с нуля(на машинном коде писать я не умею к сожалению :))), то с отметки близкой к нему.
Это кстати и танчиков касается. Сравните FPS на игре покруче как говорит Кулясище FPS у него УМИРАЕТ!

Теперь по именам )

2 Nailman, Wiz
Респект, но вы занимаетесь не благодарным и бесполезным делом вам не переубедить это Жуткое Кулясище пока вы с ним спорите у него есть своя позиция, пусть не правильная но своя и он чуствует себя нужным, хотя сам понимает что скорее всего не прав но признать это не хочет...

2 Огромное Кулясище
Не стану говорить ничего плохово твои посты за тебя гворят...
Скажу одно чтобы писать крутую игру нухна команда а один программист может токо основу(тобишь движок) закодить!
А одинокий "программист" с чужим движком - КЕН.

P.S.
И пусть не гаснет монитор в твоем доме!
P.P.S
Имхо единственны топик по теме
wiz ©   (21.06.04 15:26) [55]
P.P.P.S
А может КЕН сменил НИк и теперь он ...


 
ПсихЪ_клон   (2004-06-25 11:02) [128]

Кены - маст дай!!!

Я откровенно угарал со смеху читая этот тупой, идиотский спор, а ведь уважаемый мной NailMan преследовал другую цель, создавая сей топик.

Но посмеялся я от души, теперь весь форум будет ещё неделю ржать втихоря, вспоминая эту ветку! (:

Резюмируя сею ветку, хочется отметить:
1. Пиписьки у всех переменной длинны.
2. АПИ - маст дай, ОБОЛОЧКИ - маст дай! Даёшь GameOS!
3. Кен + Огромное_Кулясище = 2*Кен
4. Кен - Огромное_Кулясище = 0
5. 3 часа с копейками - ещё одно загадочное число
6. В этой ветке 127 (теперь 128) флуд-постов
7. И как бы там не было, по делу не высказался никто, а кто высказался, тому это списывается за дальнейший флуд!

Вот!!! Лучше бы эта ветка пропала, чем мои посты в "Основном"!
\&


 
NailMan ©   (2004-06-25 11:10) [129]

ПсихЪ_клон
> 2. АПИ - маст дай, ОБОЛОЧКИ - маст дай! Даёшь GameOS!

Это наверно ОС для PlayStation2/XBox? ;-)

Типа ничего на них нельзя делать кроме как играть.

Насчет 4. Кен - Огромное_Кулясище = 0 - очень даже похоже. По крайней мере мысли у них совпадают.

Хотя скринсейвер Трипонавтика (с наркотой) у нас в сетке пользуется популярностью.

---
WBR, NailMan aka 2:5020/3337.13


 
aprm   (2004-06-29 18:22) [130]

Люди! Я как левый человек скачал обе проги с танками. Wiz - на высоте (с учетом того времени, которе он потратил на сие детище)

Кулясище - неплохо, не больше

Я не профессионал в написании игр, но пришел к выводу, что готовый движок НИКОГДА НЕ ДАСТ ТЕХ ВОЗМОЖНОСТЕЙ, КОТОРЫЕ ДАЕТ СВОЙ Он будет тугим, излишне набитым эффектами и прочей мишурой, в нем будет чего-то нихватать.

Цель программиста, который заходит на этот форум  - НАУЧИТЬСЯ ПИСАТЬ (или что там ещё делать) Ему не важен конечный результат. Пусть игры пишут Blizzard и Co. Я же лично преследую 1 цель - понять как все это работает. Чем ниже уровень - тем лучше. У меня все.



Страницы: 1 2 3 4 вся ветка

Форум: "Игры";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 1 MB
Время: 0.044 c
14-1097181673
GuAV
2004-10-08 00:41
2004.10.31
система комманд КР580


6-1093009263
banderas
2004-08-20 17:41
2004.10.31
Ошибка с занятым портом.


6-1093112613
Луарвик
2004-08-21 22:23
2004.10.31
Замена NMHTTP у Indy


14-1097217907
Aldor
2004-10-08 10:45
2004.10.31
uses в секциях implementation и interface


14-1097259853
DeadMeat
2004-10-08 22:24
2004.10.31
Раз уж дело зашло о старом железе...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский