All streams
Search
Write a publication
Pull to refresh
2
0
Send message
Кто-то может счесть меня копирастом за следующие слова, но уверяю вас — я кардинально противоположная личность. Меня эта акция не радует. Меня, как разработчика игр, эта акция не радует вдвойне. Такая раздача топ ААА тайтла действительно ведет к обесцениванию интеллектуальной собственности. Игра, вышедшая чуть больше, чем полтора года назад, на разработку которой потратили 3 млн долларов официально раздается бесплатно. Понятно, что уже никто и не купит её. В итоге имеем тенденцию к переходу к ф2п играм — теперь даже ААА проекты начали раздавать бесплатно. С такими темпами через несколько лет на ПК вообще не останется нормальных игр — сплошные фермы да орки.
Если привести список 3-х компаний, которые сделали наиболее весомый вклад в развитие ИТ, то он будет таким:
1. IBM
2. IBM
3. IBM
Многие из знакомых и я сам уже отказались от идеи покупки очередного девайса с яблоком в пользу самсунга
Почти все эпл девайсы почти полностью samsung made ;)
Могу сделать доклад про оптимизацию игр под мобильные девайсы (ARMv7 и PowerVR SGX 5 series) ~ 1 час болтовни
Либо чисто про векторизацию кода для тех же мобильных девайсов (сюда и Андроид попадает) ~ 15-20 минут
Он в обоих средах говно
Скачать-то скачал, а хоть что-то открывал, что бы посмотреть?
Сейчас окажется, что у копирастов есть какой-то патент, который был нарушен данным изобретением и они потребуют у гугла 1 млрд долларов
Линуксоиды и рады бы покупать игры, да нету их. Хамбл бандл отлично это демонстрирует вот уже несколько лет. Четверть покупателей указывают свою ось, как Линукс. Их средний взнос в 2 раза выше такового от пользователей Винды.
Так это все равно не мешает ему гореть в аду
Желаю ему долго гореть в аду и личную камеру пыток
Вот и я о том же — можно делать отличающийся от айФона, но не уродский девайс. Нокииевские Лумиа тому хороший пример, у HTC девайсы тоже неплохие. У лыжы же еще ни одного нормального девайса не видел. Разве что, за исключением, Оптимус Г. Не удивительно, что у них очень плохие продажи смартфонов…
Какие же уродские девайсы! Неужели это очевидно только мне и никто в лыже не замечает этого?!
Он все равно будет залочен под AT&T
GTX 670, полет Unity нормальный…
Не пугайся, 4А на самофинансировании ;)
Living Computer Museum — музей компьютеров, где все можно потрогать, от Пола Аллена
Пола Аллена тоже можно потрогать?
Привет, __vortex__ :)
А как вы прокомментируете это — www.3dnews.ru/news/637534
Рандом считается отдельно. Это можно на скриншоте с профайлера увидеть.

Дизассемблер смотрели версии с интринсиками?
Всё различие версии с интринсиками должно заключаться в переупорядочивании команд.

В этом-то и вся магия) Я не спец по ассемблеру, в отличии от ребят, которые писали Clang. По коду видно, что компилятор делает много хитрой работы — данные тянет напрямую в d\q регистры и через VFP (s регистры). Опять же у меня под рукой сейчас нет Мака. Да и суть статьи в другом — юзайте интринсики. Они без особых усилий помогут получить максимум производительности, все остальное сделает компилятор. Так же на них можно быстро строить быстрый код из готовых блоков:
        float32x4x4_t mvp;
        Matrix4ByMatrix4((float32x4x4_t*)proj.m, (float32x4x4_t*)modelviewMat.m, &mvp);
        
        for (int j = 0; j < 4; ++j) {
            Matrix4ByVec4(&mvp, &squareVertices[j], &data[i + j].pos);
        }

при условии, что соответствующие методы векторизированы.
Против написания кастомного кода под каждый конкретный случай:
__restrict__ mvp, float32x4_t* __restrict__ v1, float32x4_t* __restrict__ v2, float32x4_t* __restrict__ v3, float32x4_t* __restrict__ v4)
{
    __asm__ volatile
    (
     "vldmia %0, { q8-q11 }\n\t"
     "vldmia %1, { q0-q3 } \n\t"

     "vmul.f32 q12, q8, d0[0]\n\t"
     "vmla.f32 q12, q9, d0[1]\n\t"
     "vmla.f32 q12, q10, d1[0]\n\t"
     "vmla.f32 q12, q11, d1[1]\n\t"
     
     "vmul.f32 q13, q8, d2[0]\n\t"
     "vmla.f32 q13, q9, d2[1]\n\t"
     "vmla.f32 q13, q10, d3[0]\n\t"
     "vmla.f32 q13, q11, d3[1]\n\t"
     
     "vmul.f32 q14, q8, d4[0]\n\t"
     "vmla.f32 q14, q9, d4[1]\n\t"
     "vmla.f32 q14, q10, d5[0]\n\t"
     "vmla.f32 q14, q11, d5[1]\n\t"
     
     "vmul.f32 q15, q8, d6[0]\n\t"
     "vmla.f32 q15, q9, d6[1]\n\t"
     "vmla.f32 q15, q10, d7[0]\n\t"
     "vmla.f32 q15, q11, d7[1]\n\t"
     
     "vstmia %2, { q12 }\n\t"
     "vstmia %3, { q13 }\n\t"
     "vstmia %4, { q14 }\n\t"
     "vstmia %5, { q15 }"
     
     :
     : "r" (mvp), "r" (squareVertices), "r" (v1), "r" (v2), "r" (v3), "r" (v4)
     : "memory", "q0", "q1", "q2", "q3", "q8", "q9", "q10", "q11", "q12", "q13", "q14", "q15"
     );
}

в который еще никто, кроме авторе не вникнет. Ну и для кроссплатформенности это еще один минус. У Эпиков, к примеру, в коде вообще нет асма, только интринсики вместо него.

Information

Rating
Does not participate
Registered
Activity