Re[13]: Офф
От: CreatorCray  
Дата: 03.12.09 10:21
Оценка: 2 (1)
Здравствуйте, Sinix, Вы писали:

S>Здравствуйте, CreatorCray, Вы писали:


CC>>А как ты думаешь, что будет более быстрым: interop с железом из C++ или из VM/managed?

CC>>Сразу подскажу из опыта работы с PhysX и CUDA: из C++

S>Лёгкий оффтоп: а как там различалась производительность — на порядки или кратно?

Вызовы были дороже. Не на порядки, но для некоторых сценариев время на подготовку и заброс данных в карту через managed отъедало в 2-3 раза больше чем то же но на C++. Вроде бы и немного, но в сумме набегала приличная цифра.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:21
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>Очень интересно, с учетом XNA того же

CC>>На ХНЕ ничего серъёзного никто в здравом уме не пишет.
I>Это ты так думаешь.
Да ты шо. А ссылкой подтвердишь?

CC>>Что нить уровня COD MW2 — никак нет.

I>Это пока. Сейчас проще старые движки использовать, потому как портирование слишком много времени занимает.
Новые движки все едино пишутся на unmanaged. Эксперименты ставятся, разумеется, но до практического применения пока ни один не дошёл.
Разве что если компы опять совершат качественный рывок и у всех будут десятки гигагерц проца и десятки гигабайт оперативы, чтоб можно было считать что "память не ресурс, а проц всегда всё считает быстро".
Ну а пока игры имеют жёсткие лимиты по потреблению памяти и минимальному FPS (читай, быстродействию).

I>Со временем экономия времени разработки перевесит убытки от портированя и игры будут манагед.

А наши внуки будут жить уже при коммунизме.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[7]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Требования реалтайма даж ОС Виндовс не удовлетворяет.

Реалтайм он вообще то разный бывает. И под винду realtime писать можно.

I>Единственно, памяти будет отожрано гораздо больше немного.

Интересная языковая конструкция.

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

Как раз проблема.
Чем на меньшем колве компов пойдет игра тем хуже будут продажи.
Так что в жесткие рамки системных требований надо впихнуть как можно больше.
Работать оно должно быстро — выдавать стабильный играбельный FPS.
Это бизнесу насрать сколько у него проходит времени от нажатия на кнопку до появления в окошке цифры: 0.01 сек или 0.1 сек. И не страшно если будет то 0.1 сек то 0.5 сек
А для геймера разница 10FPS и 100FPS просто фатальная. Как и провалы и рывки FPS.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[19]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, mrTwister, Вы писали:

CC>>поделись тогда инсайдерскими данными что там сейчас за расклады.

T>Что именно тебя интересует?
языки, производительность, качество симуляции
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[17]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка: +1
Здравствуйте, Ikemefula, Вы писали:

I>А что такое игра по твоему и что такое геймплей ? Хочу услышать внятный ответ.

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

I>Что ты вкладываешь в слово "двиг", не совсем ясно.

тот код, что рулит всеми подсистемами игры: рендером, звуком, скриптовым движком, ресурсами и проч.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[16]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка: +5 :)
Здравствуйте, Ikemefula, Вы писали:

I>>>То есть самая меньшая часть игры, ввод-ввывод, будет написана на с++

CC>>Ты б хоть один двиг открыл посмотреть сколько там того "ввода-вывода" и что он делает.
I>Открыл и посмотрел. Шота не ясно, про чтоты говоришь.
Можно узнать что за движок ты "Открыл и посмотрел"?

CC>>+ не забудь про realtime требования к коду. Т.е. чем быстрее рендерим — тем лучше.

I>Это и ежу ясно. Дальше то что ? Ты думаешь менеджед здесь чтото ухудшит ?
Я 4 года занимался геймдевом на фуллтайм за деньги. Так что я не "думаю" — я знаю: менеджед в геймдеве хорош или для тулов или для мелких игр, нетребовательных к ресурсам. В ядре ему еще долго будет делать нечего.

Я прекрасно осведомлён какой толщины ты тролль и мне надоело объяснять в общем то прописные истины.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[16]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, Eugeny__, Вы писали:

E__>Ясен пень. Писать логику на плюсах — трата времени и сил чистой воды.

Неудобно, да. Скрипты тут подходят куда лучше.

E__>стандартные глюки плюсов(лики и прочие последствия ручного управления памятью).

Вы всё еще выделяете память вручную??? Надо полагать STL и RAII придуманы зря. Какие ещё лики? О чем вы, господа!
Последние несколько лет запускаю BC только любопытства ради. Специально в конце unit/regression tests добавлены такие строки
int* ptr = new int [5];
ptr[2] = rand();

Чтоб убедиться что BC все еще работает, и что он пишет что ликов нет потому, что их действительно нет.

E__>Так что все правильно. Числодробилки на плюсах, логика на шарпе/жабе/питоне/жскрипте/самописном скрипте и т.д., причем необязательно только на одном из них.

Верно.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[17]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, neFormal, Вы писали:

F>сразу видно человека, который не знаком с геймдевом..

F>в геймдеве кодеры только кодят, какие могут быть ещё мысли об интересном игроку мире?. для "мира" есть геймдизайнеры, которые настраивают мир уже в тулзах, написанных специально для этого..
Ну логику поведения персонажа (а особенно наболдать забавные глюки этой логики) весьма интересно.
У нас как то даже собирали видео/скриншоты прикольных багов, потом правда забили.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[9]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, Ikemefula, Вы писали:

CC>>Капец.

CC>>Это банально неудобно.
I>это банально удобно — настраиваешь и подфикшивать можно в процессе игры, а не отдельно.
А ты попробуй.
Мы пробовали.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[9]: [геймдев] C++ сдает позиции
От: CreatorCray  
Дата: 03.12.09 10:22
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>
I>DateTime start_time = DateTime.Now;
I>00000043 8D 4D A0 lea ecx,[ebp-60h]
I>00000046 E8 B5 B0 9C 74 call 749CB100
I>0000004b 8D 7D B8 lea edi,[ebp-48h]
I>0000004e 8D 75 A0 lea esi,[ebp-60h]
I>00000051 F3 0F 7E 06 movq xmm0,mmword ptr [esi]
I>00000055 66 0F D6 07 movq mmword ptr [edi],xmm0 
I>


I>Думаю сам поймешь что к чему.

М-да. Копирование через SSE, офигеть как круто.
Если посмотреть на код, то возникает вопрос, а почему функция не вернула сразу куда надо значение? Почему его надо потом еще и копировать?

А как насчет писать сразу с использованием SSE:
    __m128i    x =    _mm_load_si128    (&a);
    __m128i    y =    _mm_srli_epi32    (b,    SFMT_SHIFT_RIGHT_32);
    __m128i    z =    _mm_srli_si128    (c,    SFMT_SHIFT_RIGHT_128);
    __m128i    v =    _mm_slli_epi32    (d,    SFMT_SHIFT_LEFT_32);

    z =    _mm_xor_si128    (z,    x);
    z =    _mm_xor_si128    (z,    v);
    x =    _mm_slli_si128    (x,    SFMT_SHIFT_LEFT_128);
    y =    _mm_and_si128    (y,    mask);
    z =    _mm_xor_si128    (z,    x);
    z =    _mm_xor_si128    (z,    y);


По опыту разработки матлибы для криптографии скажу что иногда даже за Intel C++ с макс. оптимизацией некоторые примитивы пришлось написать руками на асме с получением 30-50% прироста в скорости вычислений. Я против смешивания асма и С++, но за +50% я готов потерпеть.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[10]: [геймдев] C++ сдает позиции
От: yoriсk.kiev.ua  
Дата: 03.12.09 10:25
Оценка:
Здравствуйте, Turyst, Вы писали:

T>>>2. То что одна компания никак не определится на чем писать (из ваших слов они используют и С++ и джаву и C#) єто характеристика не отрасли .


YKU>>Это разные компании.

YKU>>ЕМНИП тот ИЛ-2, который на яве — gaijin, а этот(пердположительно на шарпе) — мaddox.

T>Лучше б вы проверили перед тем как писать.


Да так оно и есть. А что, собственно, вам не понравилось?
Re[20]: [геймдев] C++ сдает позиции
От: mrTwister Россия  
Дата: 03.12.09 10:28
Оценка: 2 (1)
Здравствуйте, CreatorCray, Вы писали:

T>>Что именно тебя интересует?

CC>языки,
С++

CC>производительность,

Недостаточная

CC>качество симуляции

Хорошее
лэт ми спик фром май харт
Re[9]: [геймдев] C++ сдает позиции
От: Sheridan Россия  
Дата: 03.12.09 10:29
Оценка: -1
Приветствую, Mamut, вы писали:

M> Managed игры будут. Думаю, года через 3-4, когда нарастет мясо.

Не успеет мясо нарасти. Как только начинает наростать, так чтото меняется.
Запомни, пока технология в руках микрософта — не жди хоть какойто долговременной стабилизации и "наращивания мяса". Это банально невыгодно.
avalon 1.0rc3 rev 306, zlib 1.2.3 (02.12.2009 18:36:32 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[9]: [геймдев] C++ сдает позиции
От: neFormal Россия  
Дата: 03.12.09 10:31
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Вообще-то объяснение элементарное.


M>В геймдеве разработчиков на С/С++ — пруд пруди. Более того, доступно просто огромное количество различных разработок (от алгоритмов до библиотек), заточенных именно под C/C++.


на самом деле, для геймдева их не так то и много.. а общие наработки — как и во всех других проектах..

M>Managed игры будут. Думаю, года через 3-4, когда нарастет мясо.


они уже есть и/или делаются.. на том же Unity3D.. но это не hi-end..

ну и, к слову, сравни перемены мнений за 4 года на кывте:
2005: http://rsdn.ru/poll/1282.aspx
Автор: lpc
Дата: 23.10.05
Вопрос: Как вы считаете, сколько еще лет будут массово создаваться коммерческие продукты на C++ ? Этот же вопрос можно поставить и вот так: сколько еще лет можно будет без проблем найти работу плюсовику?

2009: http://rsdn.ru/poll/2484.aspx
Автор: lpc
Дата: 27.11.09
Вопрос: Как вы считаете, сколько еще лет будут массово создаваться коммерческие продукты на C++ ? Этот же вопрос можно поставить и вот так: сколько еще лет можно будет без проблем найти работу плюсовику?

Когда то давно я устраивал такой же опрос: http://www.rsdn.ru/poll/1282.aspx
Интересно узнать, как изменилось мнение с тех пор. К слову сказать, в то время я писал на Java, а сейчас на C++, C++/CLI и C#.
...coding for chaos...
Re[10]: [геймдев] C++ сдает позиции
От: mrTwister Россия  
Дата: 03.12.09 10:31
Оценка: +1
Здравствуйте, Sheridan, Вы писали:

M>> Managed игры будут. Думаю, года через 3-4, когда нарастет мясо.

S>Не успеет мясо нарасти. Как только начинает наростать, так чтото меняется.

Что меняется то?
А ничего, что 99% игр на PC работают на Microsoft DirectX?
лэт ми спик фром май харт
Re[10]: [геймдев] C++ сдает позиции
От: neFormal Россия  
Дата: 03.12.09 10:35
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>По опыту разработки матлибы для криптографии скажу что иногда даже за Intel C++ с макс. оптимизацией некоторые примитивы пришлось написать руками на асме с получением 30-50% прироста в скорости вычислений. Я против смешивания асма и С++, но за +50% я готов потерпеть.


любопытно, за счёт чего был такой скачок производительности?.
...coding for chaos...
Re[11]: [геймдев] C++ сдает позиции
От: Turyst  
Дата: 03.12.09 10:36
Оценка:
Здравствуйте, yoriсk.kiev.ua, Вы писали:

YKU>Здравствуйте, Turyst, Вы писали:


T>>>>2. То что одна компания никак не определится на чем писать (из ваших слов они используют и С++ и джаву и C#) єто характеристика не отрасли .


YKU>>>Это разные компании.

YKU>>>ЕМНИП тот ИЛ-2, который на яве — gaijin, а этот(пердположительно на шарпе) — мaddox.

T>>Лучше б вы проверили перед тем как писать.


YKU>Да так оно и есть. А что, собственно, вам не понравилось?


Мы здесь говорим о Ил-2 Штурмовик, который был написан Maddox Games с использованием джавы, а не про порт на приставки сделанній gaijin, который скорей всего был написан на С++, так как например на PS3 стоит Линукс API там для С++.
Re[5]: [геймдев] C# скриптовый язык?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 03.12.09 10:38
Оценка:
Здравствуйте, IID, Вы писали:

IID>Здравствуйте, gandjustas, Вы писали:


IID>сейчас в качестве языка скриптинга стандартом де-факто является LUA


G>>Конечно не понимаешь.

G>>1)Скорость компиляции у C# (или другого .NET языка) гораздо выше
IID>чем у LUA ?
чем у плюсов

IID>а в C# от тормозов JIT-а можно отказаться при желании ? (например, если скорость скриптинга и так устраивает).

Ага, ngen
А можно в LUA отказаться от тормозов динамической типизации?

G>>2)Модульность получше

IID>Какая модульность у скрипта ? И чем она лучше чем у LUA ?
Я по LUA не спец, но можно в LUA создавать и рапространять отдельные модули, которые потом будут использоваться в других программах?

G>>3)Автоматическия сборка мусора, более мощная система типов

IID>сборка мусора есть у LUA, система типов тоже довольно мощная.
Ну в LUA динамическая типизация, это значит что множество проверок времени компиляци будут недоступны, а следовательно скорость в зависимости от размера скрипта будет падать быстрее.

IID>Более того, интерпретируемый (sic!) LUA в тестах ухитряется обходить JIT-еный C#(!)

Тесты в студию.

IID>Как минимум, обходить по объёму отжираемой памяти.

Это как раз мало инетресует. Я лишние десяток мегабайт с радостью поменяю на увеличение скорости.

IID>А если скомпилять LUA с помощью LLVM то и по производительности кое-где обгоняет, а кое-где на уровне или чуть хуже. Т.е. в этом плане сравним.

show me the code
Re[11]: [геймдев] C++ сдает позиции
От: Sheridan Россия  
Дата: 03.12.09 10:39
Оценка: :)
Приветствую, mrTwister, вы писали:

T> S>Не успеет мясо нарасти. Как только начинает наростать, так чтото меняется.

T> Что меняется то?
Да вот к примеру виндовзформс на чтототам меняют...
Я — хз, не интересуюсь особо. Разве что тут попадается...

T> А ничего, что 99% игр на PC работают на Microsoft DirectX?

Ничего, что 90% игр — на консолях вообще?
avalon 1.0rc3 rev 306, zlib 1.2.3 (02.12.2009 18:36:32 MSK +03:00)(Qt 4.6.0)
Matrix has you...
Re[9]: [геймдев] C# скриптовый язык?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 03.12.09 10:39
Оценка:
Здравствуйте, Sheridan, Вы писали:

S>Приветствую, gandjustas, вы писали:


g>> g>> S>Если рук нет — и она не поможет, а если руки есть — она не нужна.

g>> g>> Тебе это очевидно?
g>> S>Но тем не менее это очевидно.
g>> Ну вот сам сказал — значит неверно.
S>Аргументов тоже нет, ясно.
Шерида, ты не понял еще что очевидные тебе вещи никто не будет опровергать, ты их сам опровергаешь.

g>> S>Качество кода напрямую зависит от мастерства программиста, а не от языка.

g>> Очнись, кто тут про качество кода кроме тебя говорил?
S>Аналогий тоже не проводим, понятно.
S>Если программист — профессионал, то он с гораздо большей вероятностью напишет качественный код на любом из известных ему языков безотносительно поддержки управления памятью в них.
S>Или это тоже будешь оспаривать?
Еще раз, кто говорил о качестве кода?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.