Оффтоп из темы "Поиск графики (newgrf request)"

OpenTTD - современная игра, клон Transport Tycoon Deluxe с открытым исходным кодом, написанный на C и С++. Содержит ряд ключевых улучшений и возможность игры по сети. На данный момент это главное направление развития игры.

Модераторы: eraserkry, Mihamster, Smoky555, Группа модераторов

Оффтоп из темы "Поиск графики (newgrf request)"

Сообщение шумелка мышь » Вт апр 17, 2012 17:29

Начали здесь, 17-я страница топика "Поиск графики (newgrf request)"



ziond писал(а):Про "специальнй файлик ... который можно помещать папку с игрой": Такого нет, не было и никогда не будет :twisted:

Ну разумеется это сферический конь в вакууме, никто и не говорил про реализацию, да упаси Боже, чтобы разработчики опена опустились до уровня такой банальщины как файлик с плюшками для шумелки мыша :lol:
Я просто помечтал, ведь несбыточные мечты - есть смысл нашей жизни, именно они делают её интересной и заставляют двигаться вперед. ))
Тут про то как собрать опен из исходников. Тут про то как применить патч.

Вот о чем я и говорил: почитал и задымился... :mrgreen:
[*]Про модель ЛИАЗа: Человек делает модель. Ему это интересно. Потом, почему ты решил что основная задача изготовления этой модели это запихнуть ее в опен? Он может быть ее делает для собственного эстетического удовольствия? Кому-то нравится паровозы по стрелкам гонять, кому-то - модели делать. Чего в этом удивительного? :roll:

Да это я просто частный пример привел, Андрей уже ответил сам ниже, а я просто не знал, что он его не для нынешнего опена рисует. А вообще имелось ввиду что столько усилий затрачивается на рисование ПС, строений и прочей графики, а в самой игре эти преимущества представить не получается, возможности графики не позволяют.
[*]По поводу отличий опена и патча: См. выше. Плюс. Патч написан на одном языке. Опен написан на другом. Патч написан для исправления изначального ттд и, если ты помнишь, для его использования нужны были все файлы ттд. Опен написан с нуля с использованием реверсивного инжинеринга и для него раньше нужны были только граф. файлы оригинального ттд.

Этого я не знал, в смысле не знал что он написан с нуля. Почитал сейчас что такое реверсивный инжиниринг, судя по его определению TTD просто разобрали на кирпичики и воссоздали в другом языке программирования. Что в этом случае стало с движком игры и было ли что-то туда добавлено (что коренным образом могло бы улучшить интерфейс, гейплей и т.д.) я не знаю.
Так же я не в курсе возможностей разработчиков, и сложности переписывания игры, но меня очень интересует вопрос: возможно ли переложить обработку графики с процессора CPU на GPU видеокарты? Просто я вот сравнение проводил: при карте 512х256, максимальным числом grf-ок и численностью всей техники около 500 единиц игра уже конкретно медленнее работает и притормаживает при перемещении по карте на конфигурации Celeron 336D 2,8 GHz 1 core, 2,5 Gb RAM Dual Ch, Video GF 9600GT (windows 7). Загрузка проца при этом почти 80%. Та же самая савка на той же самой версии игры, работающей под той же 7-кой на всё ещё одноядерном, но не урезанном P4 3,2 GHzб 2Gb RAM Dual Ch, Video Radeon 9800 пока ещё не так заметно тормозит, но всё-таки. Понятное дело что во второй конфигурации кроме проца всё остальное заметно слабее. И соотв. вопрос: как мне играть на селерончике (он у мя основной) в карту хотя бы например 1024х1024? Игруха-то ваще слайдами потом пойдет, когда ПС станет много. А видеокарта при этом простаивает без дела.
[*]По поводу новых фич в опене: Т.к. проект открытый, то все новые патчи для новых плюшек проходят жёсткую цензуру официальных разработчиков. Цензуру именно в смысле всесторонней стабильности. И это хорошо и правильно :evil: Иначе если напихать патчей вроде светофоров в тоннелях/на мостах, туннелей под морями и им подобных то опен превратится в некачественную помойку. Я уже писал где-то, что если патч не принимают значит в нем есть проблемы. И это не только проблемы багов, а и проблемы дизайна патча. Мое личное ИМХО что патч светофоров в тоннелях это очень поверхностное решение проблемы. Куда интереснее был бы патч строительства под землёй. :wink:

Ну да, я согласен, разработчикам само собой виднее, ведь это мы - простые пользователи - хотим светофоры на мостах, а код-то ковырять им и им потом баги от внедрения этих патчей исправлять. Я просто не знал насколько отличается структура патча от опена, оказывается что это по сути дела теперь 2 разных игры.
Ну а насчет поверхностного решения проблемы, тут уже я не соглашусь :) туннели под водой даже в реальном мире, помешанном на техническом прогрессе и желании людей покорить все стихии, так и не стали массовым явлением, это сложные и опасные инфраструктурные объекты, чья реализация сопряжена со множеством трудностей. Внедряя в себя такую опцию как туннели под водой игра отрывается от реальности, ведь люди в игре начнут использовать это сплошь и рядом. А светофоры на мостах и туннелях не являются чем-то экстраординарным на железной дороге. Хотя поездам и не рекомендуется останавливаться на мостах. Ну и самое главное: позволив в опене строить полноценную инфраструктуру под землей мы тем самым превращаем опен в сим-сити, где геймплей заключается в экономической модели управления городом, уделяется много внимания красивости и реалистичности картинки на экране, но при этом минимальный акцент делается на геймплее транспортной инфраструктуры, делая её по сути не симулятором, а аркадой. Опен же является симулятором именно транспортной инфраструктуры, реализуя максимум условий, которые соблюдаются на любой реальной железной дороге. Для гейплея опена графика всё-таки вторична, а а экономическая модель явно проще чем в сим-сити, зато такие детали как СЦБ при движении по ж/д, логистика, графики движения, схемы работы ПС и другие технические подробности выходят на первый план. И я думаю что будет весьма трудно при нынешнем интерфейсе опена реализовать в подземном метро все те же возможности, которые реализованы вигре на железной дороге.
[*]Про то что будут думать "те кто не шарят во всем этом": Опять же не надо говорить за всех. Если не нравится туча настроек играй в оригинальную ттд. Ну и не имей доп. возможностей. Это же очевидно. :mrgreen: А если ты думаешь что игра сырая, то тут ты очень заблуждаешся. Чтобы отправить опен в краш надо очень постараться. ттдпатч отправлялся в краш на ура изменением пары настроек.

Согласен, за последние годы игра сильно продвинулась вперед в плане стабильности, но согласись что всё-таки нет предела для совершенства, как и в случае с линуксом, так и в случае с нашим опеном. :wink:
[*]По поводу коммерциализации проекта: Флаг в руки, барабан на шею :lol: Пока это не противоречит лицензии проекта.

Надо будет поговорить об этом с разработчиками на забугорном форуме, если конечно они там бывают. Не зная их мнения по этому вопросу мы здесь делим шкуру не убитого медведя, а быть может пока мы тут разговариваем, они уже половину работы сделали ))
Аватара пользователя
шумелка мышь
Директор
Директор
 
Сообщения: 303
Зарегистрирован: Ср июл 15, 2009 18:31

Re: Оффтоп из темы "Поиск графики (newgrf request)"

Сообщение ziond » Вт апр 17, 2012 19:55

шумелка мышь писал(а):
ziond писал(а):Про "специальнй файлик ... который можно помещать папку с игрой": Такого нет, не было и никогда не будет

Ну разумеется это сферический конь в вакууме, никто и не говорил про реализацию, да упаси Боже, чтобы разработчики опена опустились до уровня такой банальщины как файлик с плюшками для шумелки мыша
Я просто помечтал, ведь несбыточные мечты - есть смысл нашей жизни, именно они делают её интересной и заставляют двигаться вперед. ))
"несбыточные мечты" это то чего никогда не будет. Мечтать надо все-таки о чем-то "сбыточном". Ну и стремиться к этому. Согласись, стремиться к несбыточному это как-то глупо. :roll: Ну и моя изначальная фраза была о том, что системы плагинов (когда кидается файл в папку и получаем светофоры на мостах) в опене не будет, потому что писать такой API очень сложно.
шумелка мышь писал(а):
Тут про то как собрать опен из исходников. Тут про то как применить патч.

Вот о чем я и говорил: почитал и задымился...
Ну подожди немного, "остынь", почитай еще раз. Сложного там ничего нет. Вещи описанные там это чисто механический процесс, которому при некоторой прилежности может натренироваться любой. Даже я в своё время когда мне очень припёрло допёр, хотя в программировании все-таки не особо силён
шумелка мышь писал(а):
[*]Про модель ЛИАЗа: Человек делает модель. Ему это интересно. Потом, почему ты решил что основная задача изготовления этой модели это запихнуть ее в опен? Он может быть ее делает для собственного эстетического удовольствия? Кому-то нравится паровозы по стрелкам гонять, кому-то - модели делать. Чего в этом удивительного?

Да это я просто частный пример привел, Андрей уже ответил сам ниже, а я просто не знал, что он его не для нынешнего опена рисует. А вообще имелось ввиду что столько усилий затрачивается на рисование ПС, строений и прочей графики, а в самой игре эти преимущества представить не получается, возможности графики не позволяют.
Фуллзум и 32битнапиксел это уже нынешний опен. Это пробовал?
Так же я не в курсе возможностей разработчиков, и сложности переписывания игры, но меня очень интересует вопрос: возможно ли переложить обработку графики с процессора CPU на GPU видеокарты?
ИМХО нельзя или в этом нет пользы. Т.к. графика 2х мерная и спрайтовая (т.е. каждый элемент это маленькая картинка и они накладываются друг на друга, создавая конечную картинку), а современные графич. карты в плане отрисовки 2хмерных картинок уже давно не развиваются. То есть переложить отрисовку с проц на граф. карту можно, но смысла в этом нет. Вот как то так мне кажется. Надеюсь что не прав :mrgreen:
Просто я вот сравнение проводил: при карте 512х256, максимальным числом grf-ок и численностью всей техники около 500 единиц игра уже конкретно медленнее работает и притормаживает при перемещении по карте на конфигурации Celeron 336D 2,8 GHz 1 core, 2,5 Gb RAM Dual Ch, Video GF 9600GT (windows 7). Загрузка проца при этом почти 80%. Та же самая савка на той же самой версии игры, работающей под той же 7-кой на всё ещё одноядерном, но не урезанном P4 3,2 GHzб 2Gb RAM Dual Ch, Video Radeon 9800 пока ещё не так заметно тормозит, но всё-таки. Понятное дело что во второй конфигурации кроме проца всё остальное заметно слабее. И соотв. вопрос: как мне играть на селерончике (он у мя основной) в карту хотя бы например 1024х1024? Игруха-то ваще слайдами потом пойдет, когда ПС станет много. А видеокарта при этом простаивает без дела.
И я опять не понимаю, куда тебе стока грфок? И карта 1000х1000? Её же застроить за 200 игровых лет практически невозможно. :roll: Я вот в последней игре обошёлся 30тью грфками. хватило с лихвой (ну может можно еще пару грфок добавить...) Ну и карты это 512х512 максимум. Или ты действуешь по плану чем больше тем лучше? :mrgreen:
Ну да, я согласен, разработчикам само собой виднее, ведь это мы - простые пользователи - хотим светофоры на мостах, а код-то ковырять им и им потом баги от внедрения этих патчей исправлять. Я просто не знал насколько отличается структура патча от опена, оказывается что это по сути дела теперь 2 разных игры.
Не теперь, а всегда были. И разрабатывали их, в основном, разные люди. Просто в процессе развития опен перенимал (ну или если угодно, копировал) фичи ттдпатча, т.к. народ требовал. А вот рельсы над тоннелем, custombridgeheads и может быть еще какието вещи не скопировали, хотя народ их тоже требует, тут не ту один такой :). Мне, например, очень не хватает custombridgeheads
А светофоры на мостах и туннелях не являются чем-то экстраординарным на железной дороге. Хотя поездам и не рекомендуется останавливаться на мостах. Ну и самое главное: позволив в опене строить полноценную инфраструктуру под землей мы тем самым превращаем опен в сим-сити, где геймплей заключается в экономической модели управления городом, уделяется много внимания красивости и реалистичности картинки на экране, но при этом минимальный акцент делается на геймплее транспортной инфраструктуры, делая её по сути не симулятором, а аркадой.
Вапще не понял каким это тут боком? :shock: Как же это из-за возможности строить под землёй ттд превратится в симсити? Ну и сравнивать опен и симсити не стоит, игры всётаки совсем разные.
Мне вот тот патч светофоров на мостах/тоннелях кажется недоделанным. Мне непонятно, почему я не могу строить любые светофоры на мостах/тоннелях и на любом расстоянии друг от друга? Короче имхо там какое-то временное и однобокое решение
шумелка мышь писал(а):
[*]По поводу коммерциализации проекта: Флаг в руки, барабан на шею :lol: Пока это не противоречит лицензии проекта.

Надо будет поговорить об этом с разработчиками на забугорном форуме, если конечно они там бывают. Не зная их мнения по этому вопросу мы здесь делим шкуру не убитого медведя, а быть может пока мы тут разговариваем, они уже половину работы сделали ))
Поговорить о чем? Кнопка пожертвования всегда доступна на сайте :wink:
ziond
Директор
Директор
 
Сообщения: 355
Зарегистрирован: Пт мар 13, 2009 15:59

Re: Оффтоп из темы "Поиск графики (newgrf request)"

Сообщение perk11 » Вт июн 12, 2012 22:12

шумелка мышь писал(а):Этого я не знал, в смысле не знал что он написан с нуля. Почитал сейчас что такое реверсивный инжиниринг, судя по его определению TTD просто разобрали на кирпичики и воссоздали в другом языке программирования. Что в этом случае стало с движком игры и было ли что-то туда добавлено (что коренным образом могло бы улучшить интерфейс, гейплей и т.д.) я не знаю.

http://wiki.openttd.org/Comparison_of_O ... h_features вот расписано
Так же я не в курсе возможностей разработчиков, и сложности переписывания игры, но меня очень интересует вопрос: возможно ли переложить обработку графики с процессора CPU на GPU видеокарты?

насколько я понимаю (могу ошибаться, в код не лазил), опен написан так, что прорисовка неотделима от основного кода, поэтому чтобы переделать, придётся переписать половину кода игры. Да и проблема в том, что с большим количеством NewGRF, с увеличением количества поездов, игра начинает тормозить даже без отображения графики - на выделенном сервере. И во многом это проблема самого формата NewGRF, поддержка которого была сделана для совместимости с TTDPatch. Тут и ещё одна критическая проблема игры всплывает - в сетевой игре абсолютно все вычисления производятся как на сервере, так и на каждом клиенте. А это значит, что если сервер производительный, в игре много поездов и grf, то нередко происходит ситуация, когда клиент не успевает всё обсчитывать. И тогда он просто вообще не сможет играть на этом сервере. И эту часть опена тоже очень сложно переписать. Видимо, надо смириться, и пользоваться тем, что есть.

Надо будет поговорить об этом с разработчиками на забугорном форуме, если конечно они там бывают. Не зная их мнения по этому вопросу мы здесь делим шкуру не убитого медведя, а быть может пока мы тут разговариваем, они уже половину работы сделали ))
[/quote][/quote]
Разработчки бывают там, конечно, но я не понял - про что поговорить? насколько я понимаю, дальше доната идеологически дело не пойдёт.
perk11
Директор
Директор
 
Сообщения: 291
Зарегистрирован: Ср апр 21, 2010 00:03
Откуда: Москва, Новороссийск

Re: Оффтоп из темы "Поиск графики (newgrf request)"

Сообщение Edd.Dragon » Ср июн 13, 2012 04:27

Так же я не в курсе возможностей разработчиков, и сложности переписывания игры, но меня очень интересует вопрос: возможно ли переложить обработку графики с процессора CPU на GPU видеокарты?


Во-первых, там где CPU слабый, там и видеокарты древние. Хрен редьки не слаще.

Во-вторых, читаем readme:

OpenTTD has been ported to several platforms and operating systems. It should
not be very difficult to port it to a new platform. The currently working
platforms are:

BeOS - SDL or Allegro
DOS - Allegro
FreeBSD - SDL
Linux - SDL or Allegro
MacOS X (universal) - Cocoa video and sound drivers
MorphOS - SDL
OpenBSD - SDL
OS/2 - SDL
Windows - Win32 GDI (faster) or SDL or Allegro



SDL - что такое? Simple DirectMedia Layer. Все правильно, что использовать - CPU или видеокарту - это пусть лучше решает соответсвующий фреймворк. А разработчики игры пусть занимаются игрой.

Так что, если хочется задействовать именно видеокарту, то надо разузнать, как перебилдить или что в конфиге сменить, чтобы использовался SDL и при этом, чтобы обязательно он задействовал видуху.

Да и подозреваю, что GDI-вызовы под семеркой той же и так винда на видеокарте выполняет. Хотя хз, не проверял...
Аватара пользователя
Edd.Dragon
Директор
Директор
 
Сообщения: 266
Зарегистрирован: Сб янв 14, 2012 06:09


Вернуться в Общие вопросы по OpenTTD

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

cron