26.11.2007, 16:54 | #21 | ||
Новичок
Регистрация: 26.11.2007
Сообщений: 9
Репутация: 0
|
|
||
|
26.11.2007, 17:26 | #22 | ||||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
Если же сравнивать C++ либо Pascal c C# (что и пытался делать автор данной темы), то говорить о главенстве пряморукости программера просто глупо. C++ - язык, компилируемый в машинный код. C# - язык, компилируемый в байт-код, а потом интерпритируемый Framework'ом, да ещё с автоматической очисткой памяти. Отсюда следует, что даже кривыми руками написанная программа, если только в ней нет явных ошибок, да ещё скомпилированная оптимизирующим процессором имеет все шансы оказаться быстрее, нежели на C#. Просто потому, что язык C# по-умолчанию включает в себя кучу замедляющих работу вещей. И ещё давайте не будем забывать, что C++ предоставляет куда больше возможностей для оптимизации кода, нежели C# - опять же в силу низкоуровневых операций. Ну а повыкидывать ненужные блоки из кода и упростить нужные может, в принципе, и не такой крутой программист - если его заставят, конечно. Цитата:
Впрочем, к теме это не слишком относится. Как я уже говорил, C# замедляет программы сами по себе. Конечно, на нём есть возможность использовать unsafe-код, да. Но тогда какой смысл в использовании C# как такового? Цитата:
Цитата:
Что же XNA удобнее и быстрее - попробуйте мне ещё доказать, ибо под C++ сейчас столько движков и наработок у всех имеется, что преимущества C# в скорости разработки мне не совсем понятны. Работа с памятью упрощена? И что? Нормальный программист delete где нужно и так писать не забывает, а не нормальный и в C# кучу ошибок наделает. Microsoft, конечно, известна своим упорством в делании денег. Однако сейчас, похоже, уже не так ситуация, когда она может выиграть. Сравните продажи/использование Висты и XP. Ох, как M$ Висту продвигали! DirectX 10! Давайте все переходите под висту, пишите под Висту! И что? Да плюнули разработчики игр на Висту, к счастью! А некоторые и DirectX в гробу видали - под OpenGL пишут. Так что M$ в кои-то веки дали по носу с её инициативами. И ещё ответьте: Вы читали интервью Страуструпа чуть выше? В кратце - для C++ реализованы дополнительные примочки, добавляющие в него преимущества C#. А теперь вопрос - так ёлки-палки, почему ими никто не пользуется, если это так "удобно" и "экономически выгодно", а C#'пом все вдруг вдохновятся, выкинут все движки/библиотеки на C++ и строем пойдут под XNA писать, а? Из-за XBOX? А не слишком ли это глупо - писать заведомо тормознутые игры только из-за приставки, опять же заведомо более тормознутой, нежели компьтер?
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) Последний раз редактировалось pokibor; 26.11.2007 в 17:39. |
||||
|
27.11.2007, 13:16 | #23 | |||
Новичок
Регистрация: 26.11.2007
Сообщений: 9
Репутация: 0
|
Цитата:
Цитата:
Цитата:
Sorry, всемени нету. Продолжение следует... |
|||
|
27.11.2007, 13:32 | #24 | |||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
Цитата:
И опять же к медлительности - не забываем, C# сам по себе замедляет игру при том, что основные процедуры давно уже упакованы в библиотеки. Я хочу сказать, что все те же тормоза при разработке на C# останутся + добавятся ещё тормоза языка. И какой смысл в C# тогда? Цитата:
Жду конкретных возражений.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) |
|||
|
27.11.2007, 17:15 | #26 | |||
Юзер
Регистрация: 25.02.2007
Адрес: Москва
Сообщений: 123
Репутация: 209
|
Цитата:
Цитата:
Цитата:
|
|||
|
27.11.2007, 19:13 | #27 | ||
Юзер
Регистрация: 18.08.2005
Сообщений: 275
Репутация: 218
|
такой вопрос: идёт ли работа DirectX под Framework через байт-код? Т.е. основная нагружаемая часть железа в играх - видео карты, процы же редко сильно нагружаются, а если игра через XNA идёт медленней только на процессоре, а на видео карте не отражается, то проблем нету и я могу плюнуть на относительную тормознутость. А вот если отражается на видео карте, то XNA говно полюбэ, ведь разрабочики всегда выжимают всё до последней капли из ведео карты(
|
||
|
27.11.2007, 19:52 | #28 | ||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Очевидно, что частично. Иначе как через байт-код, программа под Framework работать не может. С другой стороны, реализовывать типовые функции из DirectX через байт-код было бы очень тупо даже для майкрософта.
Цитата:
Через видеокарту идут только достаточно низкоуровневые операции плюс шейдеры. Всё остальное грузит процессор. А игра - это, вообще-то, не только графика. Это ещё и физика, и огромные объёмы памяти. А память у нас в C# с автосборщиком. И вот этот автосборщик должен постоянно проверять, а нельзя ли очистить вот эти полтысячи ссылкок? А может ту тысячу отчистить? Догадываетесь, из-за чего будут программы тормозить? И даже всеобщий переход на физические ускорители и (о, Боже!) ускорители AI ситуацию с памятью не спасёт, ибо данные-то игровые в родимой ОЗУ хранятся, а там у нас сборочка памяти работает-с. И скажите мне честно: Вы планируете на физический ускоритель и ускоритель AI переходить, а? Не думаю. Цитата:
"Система всегда тормозит со скоростью самого медленного своего компонента". Разработчики выжимают всё до последней капли из всего, откуда только могут её выжать. Если Вы не в курсе, именно мощь процессора стоит на пути улучшения искуственного интеллекта и физики игры. Физические ускорители пока проваливаются, а об ускорителях AI ничего, кроме туманных проектов, и не слышно.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) Последний раз редактировалось pokibor; 27.11.2007 в 20:06. |
||
|
27.11.2007, 21:21 | #29 | ||
Юзер
Регистрация: 18.08.2005
Сообщений: 275
Репутация: 218
|
|||
|
27.11.2007, 21:36 | #30 | ||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
Далее, насчёт ослабления графики - это зависит от реализации этой самой графики. Конечно, использованием топовой видекарты с последней версией шейдеров можно несколько разгрузить процессор, но всё-таки конфигурации у пользователей, как правило, сбалансированные. Ну и к тому же шейдеры - это отдельная статья программирования, не имеющая отношения к основному языку написания программы. Кстати, Вы не думали, что в некоторых случаях, ослабляя графику, снимаете нагрузку именно с процессора, который вынужден тратить время на софтовую эмуляцию отстуствующих в видеокарте возможностей, а? Ну и жду возражений на остальные аргументы, особенно по поводу памяти. Да и по поводу физики с AI тоже не помешает. В Кризис я, правда, не играл (и не собираюсь), но ещё не видел игры с нормально реализованным AI, а физика была нормально реализована только в специальных демках, только на то и рассчитаных. Это при том, что все алгоритмы для улучшения и того, и другого уже давно известны. А всё почему? Да как раз потому что если ЭТИМ загрузить процессор, то он загнётся всё считать. Потому сейчас и особо не разгоняются в этом плане, особенно по статье AI. Далее, не лишне Вам будет напомнить, что Core 2 Duo он как бы немного двухядерный, а для получения максимальной выгоды от второго ядра в случае одного приложения нужно это самое приложение особо оптимизировать. Так что Ваши 60% могут быть не следом того, что Кризис не может загрузить процессор на все 100%, а следом плохой оптимизации под двухъядерный процессор. Только и всего.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) |
||
|
28.11.2007, 15:41 | #31 | ||
Юзер
Регистрация: 18.08.2005
Сообщений: 275
Репутация: 218
|
Цитата:
их нет. а я не про это говорил, я говорил, что если переделать игру под Framework, то из-за несильно возросшей нагрузке процессора тормозов не будет, т.к. он очень сильно не нагружается из-за слабого ИИ и физики. В данный момент процессор не так сильно нагружен, но и не выдержит всех обсчётов физики и ИИ, а вот работу через Framework справится. Он же не каждые 10 секунд проверяет ощистку памяти. Да и не совсем это байт-код, он всё-таки компилируется перед запуском из MSIL в машинные коды процессора. |
||
|
28.11.2007, 16:12 | #32 | |||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
А насчёт "Не стоит ориентироваться на видеокарты прошлого поколения" Вы скажите издателям игр. К счастью, пока они думают несколько иначе, а не заставляют всех повально на сверхновые железяки переходить. А смысл продолжения спора, если часть контраргументов не опровергнута? Цитата:
Нет, конечно, если написать на Framework какой-нибудь Quake 3, он, конечно, полетит и на семпроне. Вот только такая игра провалится в конкурентной борьбе. Железо, к сожалению, развивается медленнее алгоритмов, и зачастую как раз под них, как показала практика. И насчёт двухядерника тоже возражений нет? Просто я не вижу реальных доказательств, что в сбалансированной конфигурации процессор играет меньшую роль, нежели видеокарта. Цитата:
О, ну если этот байткод будет компилится в машинные коды процессора, то я с чистой совестью запущу какого-нибудь "Ведьмака" и подожду полчаса до запуска игры, пока код соизволит скомпилится. Зато потом буду радоваться жизни. До следующего запуска. Нет, я всё-таки ещё надеюсь добиться у Вас объяснений, что же такое даёт C#, чего не даёт C++ и что позволит ему одержать верх. Сборщики памяти для C++ есть (ими никто не пользуется). Библиотеки те же самые, что и для C#, есть. Так что же такое эта XNA даёт (кстати, она вроде как на DirectX 10, а потому по определению работает медленнее этого самого DirectX 10, уже не говоря про быстрый OpenGL), что игры будут под неё писаться в условиях противостояния красот и фишек? Ответ X-BOX не принимается т.к. насчёт заведомой тормознутости приставки по сравнению с компьютером опять же возражений не было.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) |
|||
|
28.11.2007, 16:27 | #33 | ||||
Юзер
Регистрация: 18.08.2005
Сообщений: 275
Репутация: 218
|
Цитата:
небольшой есть, просто посмотрел ради интереса, но серьёзно не занимаюсь. ещё при появлении Hyper-Threading 3 года назад многие игры начали обзаводится работой в 2х потоках, даже патчами, врядли эта тенденция остановилась. Цитата:
Цитата:
Цитата:
ЗЫ соре за даблпостинг, на клаве какая-то кнопка начала "отправлять быстрый ответ" Последний раз редактировалось CMogilko; 28.11.2007 в 16:36. |
||||
|
28.11.2007, 17:14 | #34 | ||||||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
И в то же время есть хардкорщики и пресса, которые в играх разбираются и которые могут обеспечить достаточную рекламу и раскрутку игры (рекламную компанию Halo 3 не каждый может позволить). То есть нужно угодить и технологиями, чтобы игру расхвалили, и достаточно низкими системными требованиями, чтобы она шла у как можно большего круга обывателей. Кстати, вот интересно - почему мы считаем, что Запад поголовно как сыр в масле катается? Это вовсе не так. Уровень жизни там выше, да. Но не будем забывать, что у нас многие люди вообще и компах только в новостях слышали. Цитата:
Цитата:
Цитата:
Цитата:
А как насчёт того, что по данным Майкрософта ( http://forum.igromania.ru/showpost.p...28&postcount=2 ) замедление 35%, а? А хороших передовых не тормозящих игр под .NET и нет. Ну а сапёра какого на C# в пример приводить как-то несерьёзно. Так игры и на Basic'е есть. Будем кричать, что Basic C++ рвёт на запчасти теперь? Цитата:
Далее, запуск под Линуксом и Маком - это лишь теория, т.к. под ними ещё должен появится не только базовый фреймворк, но и DirectX (при том, что 10 вроде как для висты эксклюзив пока... или уже нет?, а XNA на десятке), и всё прочее... Между тем вот незадача - C++ сам по себе кроссплатформенный язык, а OpenGL есть под тем же линуксом. То есть можно перенести игру с OpenGL без серьёзных перемен в коде. Однако ж почему-то под OpenGL не таки много игр делают (кстати, вот это зря!). Так может, дело не в мультиплатформенности? Ну и насчёт того, что XBOX медленнее компа я уже говорил, да и Вы это сами написали.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) |
||||||
|
29.11.2007, 13:57 | #35 | ||
Пугатель
Регистрация: 26.06.2005
Адрес: Москва, СССР
Сообщений: 6,103
Репутация: 1085
|
CMogilko
Давай подождем пока со спором. Ты еще не знаешь многого. Когда будем проектировать движок, ты сам многое поймешь. Сейчас ты просто не совсем себе предстваляешь, как работает двигатель игры и как именно он использует ресурсы процессора и видеокарты. Поэтому порой пишешь не совсем правильные ыещи и пытаешься всё под одну гребенку загрести (что не получится - есть там куча неочевидных нюансов, влияющих на производительность). Поэтому мы с Покибором и затеяли написание учебного проекта - игры. pokibor Давай лучше статьи писать А то тут спор глухого с немым получается
__________________
Хорошо смеется тот, кто стреляет первым! (танкистская мудрость) |
||
|
30.11.2007, 15:28 | #36 | ||
Юзер
Регистрация: 02.10.2006
Сообщений: 121
Репутация: 34
|
Не могу не высказаться по этому поводу.
Сам себе противоречишь: сначало говоришь, что все крупные разработчики гонятся за скоростью, а теперь приводишь такие игры. Хотя 3-я готика с последним патчем на рекомендуемой конфигурации и не тормозит (по крайней мере у меня) Да вы что? Кто плюнул? Кармак? Опятьже Кармак и некоторые энтузиасты. Да и вообще, все известные игры на огл сделаны восновном на кармаковском движкеОсновное отличие С++ от С - это поддержка ООП (ктобы этого не знал?) И говорить, что самое главное в движке - ООП, это бред. Есть и неооп движки. ----- Если виста тормозит на вашем компьютере, то это не значит, что Виста - говно. И разработчики современных игр не учитывают, что у пользователя видеокарта 10 лет не менялась. Цитата:
А что разработка игры - это просто и легко. К томуже если это даст хоть 5 фпс, это того стоит. и современные приложения делают обычно больше 2-х потоков. ----- Никто и не спорит, что С++ быстрее С#, но говорить, что последний - говно и никто не будет на нем писать как минимум глупо. Игры и движки на нем делают и есть готовые. А если вам хочется оптимизации, пишите под DOS, он вообще не больше 1мб памяти ест, вот только боюсь проблемы будут. Почемуже на С# будут писать? Может потому что в это вбухивает MS? Или они просто не имели дело с pokibor'ом? =) Цитата:
__________________
Вот так вот... |
||
|
30.11.2007, 15:46 | #37 | ||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
serializer, во-первых, попрошу воздержаться от бранных слов. Во-вторых, [CCCP] Monster про спор немого с глухим написал верно, так что воздержусь от своих комментариев, особенно после Вашей последней фразы, отлично Вас иллюстрирующей. В-третьих, перечислите игры "только под DirectX 10 и Висту" (как и хотела M$) и тогда поймёте, кто именно на неё плюнул. В-четвёртых, я и сам на C# пишу. Удивлены? А я пишу, потому что всякую мелочь на нём писать действительно быстрее и удобнее, нежели на Visaul C++ под Win 32. Там есть быстрый и удобный конструктор оконных приложений и нет глюков Борландовского Builder'а. Но вот писать на нём серьёзную игру мне в жизни в голову не придёт по указаным выше причинам. И по ним же это не будет быстрее и удобнее, нежели на C++.
И перечитайте название темы: "С# и Xna - революция в игросторении". Речь идёт конкретно об игростроении, причём в-основном о серьёзных коммерческих играх. P.S. А статьи я пишу, только медленно. Сейчас вот хочется собрать небольшую программу по нечёткой логике. Кстати, собираю я её на C#, ибо для небольших оконных приложений он вполне удобен. Вот так.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) Последний раз редактировалось pokibor; 30.11.2007 в 15:54. |
||
|
30.11.2007, 16:03 | #38 | ||
Юзер
Регистрация: 02.10.2006
Сообщений: 121
Репутация: 34
|
pokibor
Я написал свои коментарии и четко их аргументировал. Отвечаю вопросы: Вот уж не думал, что это может так обидеть другого человека, а темболее и "иллюстрировать" меня. Цитата:
ЗЫ. закройте тему если нечего писать. ЗЫ. Избавте от ВЫканья, это всеже действует на нервы
__________________
Вот так вот... |
||
|
30.11.2007, 16:25 | #39 | ||
Кандидат наук
Регистрация: 13.06.2005
Адрес: 0x00000000
Сообщений: 8,356
Репутация скрыта
|
Цитата:
Особенно радуют слова "Но все равно играбельней, чем под Windows Vista." и "разглядывая скриншоты Dx10 very high и dx9 very high... не вижу никакой разницы (vista x86, 8800gts)!!! Но зато четко вижу разницу в скорости (~15-20%)." Иными словами факты говорят о том, что Виста и DX10 как основа для игр реально никому не нужны, разве что Micro$oft денег даст и заставит всех писать под них (но столько денег даже у M$ не найдётся). А если ещё иметь в виду, что DirectX 10 - это не XNA, то XNA тем более вообще никому не нужна и даже не планирует быть нужной. Так что извините, но факты - вещь упрямая. А предполагать Вы можете всё, что угодно. Я же предпочитаю на факты смотреть. Ладно, в виде исключения, хотя чувствую, что результат будет столь же глухим: То, что разработчики не оптимизируют свои игры ещё не значит, что они не гонятся за скоростью и пойдут писать на C#. Потому что на C# у них выйдет точно такая же "оптимизация", а скорее даже хуже за счёт отсутствия работы с памятью. Что OpenGL быстрее DirectX - факт. Кармак далеко не самый глупый человек, его движки вроде как покупают за боооольшие деньги. Про ООП Вы ответили на какой-то выдуманный собой вопрос, моего же аргумента и краем не коснулись. Это не ко мне. Хотя я бы её не закрыл в любом случае. Писать есть чего, людей, разбирающихся на должном уровне в теме, нет. Если это Вам действует на нервы, то опять же см. про иллюстрацию. Я собеседников на форумах привык уважать и обращаться к ним соответсвующе. На "ты" я только с теми, кого хорошо знаю.
__________________
Товарищ, верь: пройдет она - Эпоха лживых, злых понятий. Весь мир очнется ото сна, И на обломках "демократий" Напишут наши имена! Мы были волшебницами (оригинальное фентези) Тень Войны (фанфик по ГП) |
||
|
30.11.2007, 16:58 | #40 | ||
Юзер
Регистрация: 02.10.2006
Сообщений: 121
Репутация: 34
|
pokibor
Пишу последний, надеюсь, пост в этой теме: 1 . Будут писать только потому что МС так надо. И МС вложит масимум сил и денег для этого. 2 . 3 . Про ООП я взял это из темы "Проектируем ядро игры" 4 . Вот именно, что все огл игры основаны на кармаковском движке. Покупают? Unreal Engine 3 (это тот что с ДХ10) тоже покупают и по статистике гораздо больше. 5 . Очевидно, что API, основанное на СОМ объектах будет медленнее 6 . "разбирающихся" в чем? вы хотите найти людей, которые смогут оспорить ваше мнение. Тогда на gamedev.net или подобные сайты. А здесь вы таких точно не найдете. 7 . Если для вас Ты - это оскарбление, то с вами я буду на ВЫ.
__________________
Вот так вот... |
||
|
|