Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Курилка программистов
GAMEINATOR forums > Soft, Hard и периферия > Hard & Soft
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9
abramcumner
Цитата(Forser @ 25.09.2017, 13:05) *
Есть опция /arch: и тут на выбор: SSE2, SSE, AVX, AVX2

biggrin.gif
И компилятор реально делает mul_43 на AVX?
ForserX
abramcumner, дизассемблированный код смотри. Я не особо вникал.
NanoBot-AMK
О нет ребята, я же сказал, только ручками, не станет ВАШ компилятор делать сверхоптимальный код только лишь, если вы что-то там задали в батнике, батником вы лишь разрешаете использовать инструкции новейших процессоров, но не более того. Время ещё не пришло, дак когда оно выйдет? Когда выйдет С.Т.А.Л.К.Е.Р. 3!!! Три, Карл!!!
ForserX
Цитата(NanoBot-AMK @ 25.09.2017, 17:40) *
батником вы лишь разрешаете использовать инструкции новейших процессоров, но не более того.

Как бы не так. Тестил AVX инструкции на отключённой архитектуре. А вообще, надо бы дособирать и посмотреть. Если он всё-таки ничего не переписывает, то буду писать код на инструкциях.
Молния в вакууме
Не надо тратить время и силы на x86, подождите пока компьютеры перейдут на RISC (хотя это событие уровня виндекапец, лол), и всё будет проще и лучше.
ForserX
Цитата
Следует иметь в виду, что данные команды не только изменяют поведение SSEx intrinsic-функций, но и разрешают компилятору генерировать AVX инструкции при компиляции обычного C/C++ кода (/QaxAVX говорит Интеловскому компилятору сгенерировать две версии кода — с AVX инструкциями и с базовыми x86 инструкциями).


https://m.habrahabr.ru/post/99367/
NanoBot-AMK
Напрямую Fvector не совместим с Fvector4. Например нельзя задать так:
Fvector vec1;
Fvector4 vec2;
vec2:set(vec1);
vec1:set(vec2);
Только так, даже на ассемблере.
vec2:set(vec1.x, vec1.y, vec1.z, 0.f);
vec1:set(vec2.x, vec2.y, vec2.z);
Иначе С++ просто не соберётся, а ассемблер при запуске сделает ошибку.
Так что только ручками. z_crazy.gif
В жизни компилятор не догадается преобразовать 3д вектор в псевдо3мерный 4 мерный вектор.
Fvector4 struc
x dd ?
y dd ?
z dd ?
w dd 0.0
Fvector4 ends
PS
Эээ почему ещё не кто не тестил мой код, мне важно знать, насколько хорошо он работает на новейших архитектура, сядне надо. К 12 интернет закончится у меня!
Молния в вакууме
NanoBot-AMK, тут два варианта:
  1. перегрузить set у Fvector4, чтобы можно было передавать Fvector. И наоборот.
  2. добавить в Fvector4 operator Fvector. И наоборот.

Лучше первый.
NanoBot-AMK
Какой ещё первый, литофрактор мне в зад.
Fvector4 это четыре float'а подряд, а Fvector три, ну не как они не совместимы, это же полная перекомпиляция.
jamakasi
Цитата(NanoBot-AMK @ 25.09.2017, 18:10) *
Эээ почему ещё не кто не тестил мой код, мне важно знать, насколько хорошо он работает на новейших архитектура, сядне надо. К 12 интернет закончится у меня!

https://yadi.sk/i/8En3Su-c3NDLv5
цифра сколько раз жмякнул на кнопку.
ForserX
NanoBot-AMK, сделать просто конвертер и не мучаться.
Diesel
Привет. Не завалялась ли у вас Physx 3.3.1 sdk core

Нвидия не хранит архивы, а в поисковике не найдёшь, то что надо.

Типа такой: PhysX-3.1.2_PC_VC9_SDK_Core
ForserX
Цитата(andreyholkin @ 28.09.2017, 01:54) *
Типа такой: PhysX-3.1.2_PC_VC9_SDK_Core

http://rutracker.org/forum/viewtopic.php?t=3977126
Diesel
Цитата(nflaming @ 28.09.2017, 16:19) *
Цитата(andreyholkin @ 28.09.2017, 01:54) *
Типа такой: PhysX-3.1.2_PC_VC9_SDK_Core


Вот как раз там это и скачал. Мне бы того, чего поновее. PhysX-3.3.1_PC_VC9_SDK_Core
Пытаюсь собрать движок Torque, но нет СДК physx нужного. Хотя говорят можно и новее версию СДК, но у меня баги с компиляцией вылазят, править СДК или проект сложновато, пока не дорос, да и чреваты баги скрытые, даже после компила, в самой игре.
ForserX
andreyholkin, сайта 4 с этой версией видел. Учись гуглить.
Tron
Пиши ошибки сюда.
Ничего там сложного нет, там есть deprecated API, насколько я помню, в 3.1, 3.2.
Берешь 3.3, открываешь release notes и начинаешь адаптировать.

В 3.4 уже порядочно изменений.
Diesel
Tron, я знаю что вам решить эту проблему просто:

Код
16>   Creating library ../../../game/PhysX-3.2.4_PC_SDK_Core DLL.lib and object ../../../game/PhysX-3.2.4_PC_SDK_Core DLL.exp

16>px3Body.obj : error LNK2019: unresolved external symbol "__declspec(dllimport) public: static class physx::PxBounds3 __cdecl physx::PxGeometryQuery::getWorldBounds(class physx::PxGeometry const &,class physx::PxTransform const &,float)" (__imp_?getWorldBounds@PxGeometryQuery@physx@@SA?AVPxBounds3@2@ABVPxGeometry@2@ABVPxTransform@2@M@Z) referenced in function "public: static class physx::PxBounds3 __cdecl physx::PxShapeExt::getWorldBounds(class physx::PxShape const &,class physx::PxRigidActor const &,float)" (?getWorldBounds@PxShapeExt@physx@@SA?AVPxBounds3@2@ABVPxShape@2@ABVPxRigidActor@2@M@Z)

16>px3Player.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: static class physx::PxBounds3 __cdecl physx::PxGeometryQuery::getWorldBounds(class physx::PxGeometry const &,class physx::PxTransform const &,float)" (__imp_?getWorldBounds@PxGeometryQuery@physx@@SA?AVPxBounds3@2@ABVPxGeometry@2@ABVPxTransform@2@M@Z)

16>px3Body.obj : error LNK2019: unresolved external symbol "public: static bool __cdecl physx::PxRigidBodyExt::setMassAndUpdateInertia(class physx::PxRigidBody &,float,class physx::PxVec3 const *,bool)" (?setMassAndUpdateInertia@PxRigidBodyExt@physx@@SA_NAAVPxRigidBody@2@MPBVPxVec3@2@
_N@Z) referenced in function "public: virtual bool __thiscall Px3Body::init(class PhysicsCollision *,float,unsigned int,class SceneObject *,class PhysicsWorld *)" (?init@Px3Body@@UAE_NPAVPhysicsCollision@@MIPAVSceneObject@@PAVPhysicsWorld@@@Z)

16>px3Player.obj : error LNK2019: unresolved external symbol "public: static bool __cdecl physx::PxRigidBodyExt::linearSweepSingle(class physx::PxRigidBody &,class physx::PxScene &,class physx::PxVec3 const &,float,class physx::PxFlags<enum physx::PxHitFlag::Enum,unsigned short>,struct physx::PxSweepHit &,unsigned int &,struct physx::PxQueryFilterData const &,class physx::PxQueryFilterCallback *,struct physx::PxQueryCache const *,float)" (?linearSweepSingle@PxRigidBodyExt@physx@@SA_NAAVPxRigidBody@2@AAVPxScene@2@ABVPxV
ec3@2@MV?$PxFlags@W4Enum@PxHitFlag@physx@@G@2@AAUPxSweepHit@2@AAIABUPxQueryFilterData
@2@PAVPxQueryFilterCallback@2@PBUPxQueryCache@2@M@Z) referenced in function "public: virtual void __thiscall Px3Player::findContact(class SceneObject * *,class Point3F *,class Vector<class SceneObject *> *)const " (?findContact@Px3Player@@UBEXPAPAVSceneObject@@PAVPoint3F@@PAV?$Vector@PAVSceneObject@@@@@Z)

16>px3World.obj : error LNK2019: unresolved external symbol __imp__PxRegisterParticles referenced in function "class physx::PxPhysics * __cdecl PxCreatePhysics(unsigned int,class physx::PxFoundation &,class physx::PxTolerancesScale const &,bool,class physx::PxProfileZoneManager *)" (?PxCreatePhysics@@YAPAVPxPhysics@physx@@IAAVPxFoundation@2@ABVPxTolerancesScale@2
@_NPAVPxProfileZoneManager@2@@Z)

16>px3World.obj : error LNK2019: unresolved external symbol __imp__PxRegisterCloth referenced in function "class physx::PxPhysics * __cdecl PxCreatePhysics(unsigned int,class physx::PxFoundation &,class physx::PxTolerancesScale const &,bool,class physx::PxProfileZoneManager *)" (?PxCreatePhysics@@YAPAVPxPhysics@physx@@IAAVPxFoundation@2@ABVPxTolerancesScale@2
@_NPAVPxProfileZoneManager@2@@Z)

16>../../../game/PhysX-3.2.4_PC_SDK_Core DLL.dll : fatal error LNK1120: 5 unresolved externals


Это предок той СДК, что надо. 3.2.4 есть - надо 3.3.1. В новой версии 3.3 либы уже собраны на vc11, vc12
Я использую vs9 2008. Если подключаю новую СДК 3.3 (она уже не та на гитхабе Нвидиа, что была изначально, а 3.4 больше однако), то ошибка по флагам Zi in p2
Новые визуалки я ставить пока не собираюсь, так как проект изначально был адаптирован под vs2008 c использованием physx3
Diesel
Tron, нашел сдк 3.3.4 (явно не для vs2008). Буду пытаться перенести проект на vs2010, других у меня пока нет. Поможешь?

На vs2008 баг:
16>Compiling resources...
16>Microsoft ® Windows ® Resource Compiler Version 6.0.5724.0
16>Copyright © Microsoft Corporation. All rights reserved.
16>Linking...
16>fatal error C1007: unrecognized flag '-Zi+' in 'p2'
16>LINK : fatal error LNK1257: code generation failed

Это из-за новой библиотеки?
Diesel
Проект vs2008 перенёс на vs2010:
На финальной стадии валится:

Код
16>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Pacific3D_38_Win\My Projects\PACIFIC_PX334\buildFiles\VisualStudio 2008\projects\../../Link/VC2k8.Release.Win32\PACIFIC_PX334 DLL.dll) не соответствует значению свойства выходного файла (C:\Pacific3D_38_Win\My Projects\PACIFIC_PX334\game\PACIFIC_PX334 DLL.dll) для Linker. Это может привести к неправильному построению проекта. Чтобы исправить это, убедитесь, что значения свойств $(OutDir), $(TargetName) и $(TargetExt) соответствуют значению, указанному в %(Link.OutputFile).

16>LINK : fatal error C1900: Несоответствие IL между "P1", версия "20100826" и "P2", версия "20081201"

16>LINK : fatal error LNK1257: не удалось создать код

17>------ Построение начато: проект: PACIFIC_PX334, Конфигурация: Release Win32 ------

17>  main.cpp

17>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Pacific3D_38_Win\My Projects\PACIFIC_PX334\buildFiles\VisualStudio 2008\projects\../../Link/VC2k8.Release.Win32\PACIFIC_PX334.exe) не соответствует значению свойства выходного файла (C:\Pacific3D_38_Win\My Projects\PACIFIC_PX334\game\PACIFIC_PX334.exe) для Linker. Это может привести к неправильному построению проекта. Чтобы исправить это, убедитесь, что значения свойств $(OutDir), $(TargetName) и $(TargetExt) соответствуют значению, указанному в %(Link.OutputFile).

17>LINK : fatal error LNK1181: не удается открыть входной файл "C:\Pacific3D_38_Win\My Projects\PACIFIC_PX334\buildFiles\Link\VC2k8.Release.Win32\PACIFIC_PX334 DLL.lib"
========== Построение: успешно: 15, с ошибками: 2, без изменений: 0, пропущено: 0 ==========
ForserX
andreyholkin, скинь сорцы, посмотрю на днях.

P.S. весь процесс будет в 2017 студии.
Diesel
nflaming, у меня подозрение на пробелы в путях и в названиях, выходных файлов. Я работаю на win10, а она не понимает же пробелы? (и еще и русские буквы).

Я устранил ошибки для vs2010, откатился в линковщике на v90

Опять это ловлю:
16>fatal error C1007: unrecognized flag '-Zi+' in 'p2'
16>LINK : fatal error LNK1257: code generation failed

Это из-за ошибки в командной строке?
ForserX
andreyholkin, да.
Diesel
nflaming, статическая либа у меня собирется (без линкёра). Методом тыка сложно найти баг в командной строке. А есть ли еще варианты, как эту либу затолкать в другую делку или экзеху?
Уменя уже мозги опухают. Зря наверно я в разработчики хотел податься.
Оставлю ка я этот движок до лучших времён.

Самое интересное, что physx 2.8.4 (и 2.8.1) я могу подключить к еще одному проекту на этом движке, а physx3 - болт.
Вот доказательства.
NanoBot-AMK
5000 тактов!!!!
Эээ это по ходу винда блокирует код, она его считает типо вирусным, эх ты сволочь, ая думаю это чего старый(2008) ноутбук с ХР без антивирусов выполняет быстрей чем мой процессор. Да тесты никчёрту не годятся. Винда 10 говно, винда 7 говно, но не такое говнистое, т.е. жрать можно. Надо тему на wasm'е создавать, так не хрена поймёшь.
ЗЫ
Это я к чему, просто мне нужно было знать возможность конвеера процессоров крайнего поколения типа Ryzen и иже с ним, я так понимаю что они могут выполнять больше инструкций SSE одновременно. Если это не так, то оптимизация кода SSE не целесообразна.
Diesel
Рендер в Torque офигенный. Это автомат из Фар-Края 3 оригинальный. Он так в родной Дуне-2 не смотрелся.

Diesel
Новая забава у меня.

http://www.amk-team.ru/forum/topic/13648-n...comment=1138517
Молния в вакууме
Цитата
NeoAxis

И что, справляется с картами из сталкера? Я когда-то туда кусочек Припяти загрузил, тормозило просто пипец, просадки до 20 фпс. Правда версия старая была, за 2010 год.
Редактор конечно у него поудобней чем X-Ray SDK, но сам движок оцтой. Написан на сисярпе, текстурные координаты для лайтмап надо самому делать, медленный.

Результаты моего эксперимента: https://yadi.sk/d/Evu6fATV3Pzckx
Пароль: hlam123
Diesel
Цитата(saas @ 24.11.2017, 18:00) *
кусочек Припяти загрузил, тормозило просто пипец


Тормозит. Вся нагрузка на оперативу. 5Г жрёт без оптимизации. С оптимизацией 4Г.


Но этот движок меньше жрёт, чем Унреал Энгина. Я тестировал и там и там.
Tron
Цитата(andreyholkin @ 06.10.2017, 21:20) *
Рендер в Torque офигенный. Это автомат из Фар-Края 3 оригинальный. Он так в родной Дуне-2 не смотрелся.


Ты шутишь? - отстой отстоем
Diesel
Цитата(saas @ 24.11.2017, 18:00) *
Цитата
NeoAxis

И что, справляется с картами из сталкера? Я когда-то туда кусочек Припяти загрузил, тормозило просто пипец, просадки до 20 фпс. Правда версия старая была, за 2010 год.

Результаты моего эксперимента: https://yadi.sk/d/Evu6fATV3Pzckx
Пароль: hlam123

Не работает в моей 10ке 64бита. Никак. Верю на слово.
Оружие смотрю создавал.

Древний NeoAxis - даже исходники не компилируются в 2008 и 2010 визуалках. Там походу пути не совпадают.
Diesel
Цитата(Tron @ 24.11.2017, 19:58) *
Ты шутишь? - отстой отстоем

На любителя. Я слепошарый, мне нормально. Да уже не важно, я уже не торкаю торкуе.

У меня UDK и Юнити прозибают. Так хотелось бы Х-рей допилить... но нафих надо - чужое.
Tron
Поинтересуйся проектом Life is feudal. Изначально был на торке. Приятель им рендер писал
Diesel
Трон, у тебя случайно нет приятеля с исходниками вот на это: The Precursors https://ru.wikipedia.org/wiki/%D0%9F%D1%80%...%B5%D1%87%D0%B8
Я тут собирал кое-что, не хватает исходного кода.
Торжок меня пока не интересует. Спасибо за инфу.
Tron
Вот в Deep Shadows, никого нет.

autistic
Цитата(Tron @ 28.11.2017, 05:09) *
Изначально был на торке.

Он и сейчас на torque3d, насколько мне известно, только они его сильно переделали, со слов ихнего главного, а переходить на новую технологию - долго, дорого и людей нет. Общались пару лет назад по поводу вакансии, не понравилось мне у них.
Tron
Цитата(refuse @ 29.11.2017, 09:37) *
Цитата(Tron @ 28.11.2017, 05:09) *
Изначально был на торке.

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

Что такое концепция? Подобную тему создал на АМК. К сожалению многие туда не заходят. Буду вонять тут.

Интересует ваше видение по развитию направления в мире игростроя. Нужно понимание, чем вы сейчас занимаетесь, платформы, планы.
Стоит ли замахнуться на Шекспира? Рейтинг игр "топ 100" - это досягаемо для нас, простых смертных?
Diesel
https://yadi.sk/d/8WQD5erpRBMXi От куда растут ноги этого слива движка и исходников BW? Важно найти инфу для истории. Говорят китайцы виноваты, а не мы.

А вот еще слив, но без исходников https://cloud.mail.ru/public/653A/D8bR8tZMq Это скорее всего мы....

Скину я наверно еще кое какие древности - может кому пригодится:
https://cloud.mail.ru/public/Hqas/JTGcF2txm
autistic
Цитата(andreyholkin @ 02.12.2017, 20:52) *
От куда растут ноги этого слива движка и исходников BW?

Неплохо бы перед тем как делать очередной слив хотя бы в краткой форме описать что это и для чего нужно. А то что-то совсем не хочется качать какой-нибудь пирог с говном весом в несколько гигабайт.

Diesel
Цитата(refuse @ 03.12.2017, 00:46) *
Цитата(andreyholkin @ 02.12.2017, 20:52) *
От куда растут ноги этого слива движка и исходников BW?

Неплохо бы перед тем как делать очередной слив хотя бы в краткой форме описать что это и для чего нужно. А то что-то совсем не хочется качать какой-нибудь пирог с говном весом в несколько гигабайт.

Это не про Сталкер. Две первые ссылки - это движок BigWorld (платный, в свободном доступе нет, лицензия увы убита - так как она именная должна быть). На этом движке изначально базировалась игры Варгейминга.
Последняя ссыль - это старые исходники физики движка Havok (ныне нет в свободном обороте).

Это не пирог (с говном - не мои слова) - потомки оценят.
OlegatoR
По теме игрового движка отделил посты в отдельную тему Разработка игрового движка с нуля . По новым сопутствующим темам - добро пожаловать в раздел Создание игр. Геймдев
Молния в вакууме
На форум прикрутили подсветку синтаксиса.
Я не могу понять, зачем, блин, нужна подсветка для ini? blink.gif
CODE
[section]
parm1 = 12355
parm2 = "string" ; comment

[section2]
parm3 = 3, 4, 5
autistic
saas, почему нет? На hastebin например есть подсветка синтаксиса для ini
Молния в вакууме
refuse, подсветка синтаксиса нужна, чтобы код было легче читать, и чтобы проще было определять ошибки.
Ини-файл написанный чёрным по белому читать проще, чем ини-файл раскрашенный всеми цветами радуги, а из ошибок я могу предположить только отсутствие закрывающей скобки в имени секции, что и так хорошо видно.

OlegatoR
saas, для кода без подсветки есть тег [code]
Молния в вакууме
Цитата(OlegatoR @ 19.01.2018, 21:07) *
saas, для кода без подсветки есть тег [code]

Кстати, в предварительном просмотре сообщения подсветка не работает. Так и должно быть?
1001v
Цитата(saas @ 19.01.2018, 21:36) *
Кстати, в предварительном просмотре сообщения подсветка не работает. Так и должно быть?

Да, но если очень нужно то можно исправить
Молния в вакууме
Цитата(RedPxthon @ 19.01.2018, 21:38) *
Цитата(saas @ 19.01.2018, 21:36) *
Кстати, в предварительном просмотре сообщения подсветка не работает. Так и должно быть?

Да, но если очень нужно то можно исправить

Если так было задумано, то не нужно. smile.gif
1001v
Цитата(saas @ 19.01.2018, 21:47) *
Если так было задумано, то не нужно.

Не задумано, просто не реализовано
Молния в вакууме
RedPxthon, исправь лучше то, что комментарий перекрывает вторую секцию.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.