Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: OpenXRay
GAMEINATOR forums > S.T.A.L.K.E.R. > Мастерская: создание модов для S.T.A.L.K.E.R.
Страницы: 1, 2, 3, 4, 5, 6
Xottab_DUTY
Shoкer, блин, классно выглядит!
Shoкer
Цитата(БутчерПит @ 25.12.2018, 16:15) *
Shoкer, можешь объяснить подробнее, как это работает и что собой представляет изнутри?


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

В шейдерах слегка поправлен код затуманивания, если разберусь то ещё добавлю чтобы низины туманились сильнее чем вершины.

Дальность прорисовки пришлось выкрутить на максимум, иначе смотрелось плохо. Может работать и с ограниченной дальностью прорисовки, но чтобы это не резало глаза - придётся вносить больше правок в рендер.

Цитата(БутчерПит @ 25.12.2018, 16:15) *
Цитата(Shoкer @ 23.12.2018, 14:34) *
смоделирует панораму (лоу-поли + спрайты
А текстуры задников уже есть готовые?


Нет. Но в ЗП СДК есть лоу-поли модели домов Припяти, Колеса, Полесья, ещё каких то задников с Юпитера. Есть билдовская текстура лесополосы. В идеале нужен Радар (использовать полноценную модель антент?), Дуга (можно плоским aref-спрайтом, в идеале лоуполи). Ближние планы в идеале делать моделями, ибо спрайты не идеально освещаются. Ну ЧАЭС само собой, тут уже спрайтом не обойтись. Землю можно текстурой леса и травы покрыть. Совсем дальние планы можно текстурой, но если она будет с мягкой прозрачностью, то скорее всего будет плохо освещаться.

Единственный минус - всю панораму нужно склеить в одну модель. Впрочем если это проблема, то можно дописать.

Вообщем по факту нужно взять террейн уровня из ЗП и расставить вокруг него объекты "дальнего плана" (с учётом расстояний по карте в ПДА).

В идеале конечно хочется добиться чего-то вроде: https://youtu.be/1WYGCpwFxUA

Также изначально я думал что можно обойтись одной панорамой, но в итоге пришёл к выводу что под все три уровня (если речь про ЗП) придётся делать свои панорамы, т.к. тот-же Юпитер слишком близко к Припяти, вплоть до того что там уже сами GSC поставили колесо и Припятские дома.

С другой стороны можно с Затона сделать дальний вид на Юпитер, с Юпитера на перерабатывающую станцию Затона и т.п (само собой заморачиваться с детализацией не стоит).

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

- - - - - -
Делал и тестировал только на 4-ом рендере (DX11). Как себя поведёт на статике и более ранних рендерах не знаю (хотя врятли будут проблемы). Займусь этим вопросом уже если найдутся желающие моделить.
abramcumner
Цитата(Shoкer @ 25.12.2018, 22:52) *
По центру карты появляется обычная модель и просто растягивается до нужных размеров (впрочем ничто не мешает сразу сделать большую).

А почему нельзя просто дополнить геометрию локаций, зачем такой огород городить?
Shoкer
В каком плане? Если через СДК - то это доделка и перекомпиляция уровня. А на выходе будет тот-же самый результат, потому что все объекты в движке всё равно в ogf разворачиваются (даже статика).
RayTwitty
Shoкer, может стоит корректировать положение модели относительно камеры ГГ?

Цитата(Shoкer @ 25.12.2018, 22:52) *
В идеале конечно хочется добиться чего-то вроде: https://youtu.be/1WYGCpwFxUA

В колде фейковая станция смотрится довольно-таки стремно))
Shoкer
Цитата(RayTwitty @ 26.12.2018, 01:18) *
может стоит корректировать положение модели относительно камеры ГГ?


В этом нет никакого смысла. Статичные панорамы гораздо лучше и реалистичнее.
Имело бы смысл в ТЧ из-за большого числа локаций, но не в ЗП, где все достопримечательности территориально рядом.
Trollz0r
Цитата(Shoкer @ 25.12.2018, 20:52) *
Ближние планы в идеале делать моделями, ибо спрайты не идеально освещаются.
А с этим можно вообще что-то сделать? У меня тоже проблема с плоскими задниками вокруг локации - выглядят совершенно ублюдочно.
Yara
Попробовал компили с билда 221,
Rx86
[06/17/19 16:35:42] OpenXRay Rx86 build 7308, Feb 8 2019
[06/17/19 16:35:42] AppVeyor build 221 from commit[6b42da4f08159ef7c7861c3ad6838f9a0838f774] branch[HEAD] (built by OpenXRay)
[06/17/19 16:35:42]
[06/17/19 16:35:42] command line
[06/17/19 16:35:42]
[06/17/19 16:35:42] * CPU features: RDTSC, MMX, SSE, SSE2, SSE3, SSE4.1, SSE4.2, AVX
[06/17/19 16:35:42] * CPU cores/threads: 8/8
[06/17/19 16:35:42] * CPU0 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU1 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU2 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU3 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU4 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU5 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU6 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42] * CPU7 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:35:42]
[06/17/19 16:35:42] Initializing File System...
[06/17/19 16:35:42] using fs-ltx fsgame.ltx
[06/17/19 16:35:42] FS: 46961 files cached 0 archives, 9996Kb memory used.
[06/17/19 16:35:42] Init FileSystem 2.691760 sec
start new thread [log-update]
"LevelBuilder v4.1" beta build
Compilation date: Feb 8 2019

Startup time: 16:35:42

* New phase started: Reading project [arena]...
| | version: 18

* New phase started: Converting data structures...
| Vertices...
| | * vertices: 42174
| Faces...
| | * faces: 77390
| Models and References
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_05' - v(506/506), f(960/960)
| | * Loading model: 'trees\new_trees\trees_spil_01' - v(238/238), f(442/442)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_04' - v(177/177), f(242/242)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_05' - v(243/243), f(330/330)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_03' - v(1107/1107), f(1590/1590)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_02' - v(204/204), f(250/250)
| | * Loading model: 'statics\vehicles\cars\btr_br' - v(4212/4212), f(14236/14236)
| | * Loading model: 'statics\vehicles\cars\kamaz_fura' - v(4774/4774), f(15674/15674)
| | * Loading model: 'trees\new_trees\bush_1_01' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_1_sux_01' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_1_sux_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_01' - v(534/534), f(1006/1006)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_02' - v(493/493), f(1180/1180)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_03' - v(556/556), f(1042/1042)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_04' - v(401/401), f(758/758)
| | * Loading model: 'trees\new_trees\bush_1_sux_03' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_1_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\bush_1_03' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_2_01' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_2_03' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_2_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_01a' - v(1372/1372), f(2651/2651)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_02c' - v(1960/1960), f(3776/3776)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_03b' - v(2139/2139), f(4313/4313)
| | * Loading model: 'trees\new_trees\trees_sosna_1_01' - v(1219/1219), f(1830/1830)
| | * Loading model: 'trees\new_trees\trees_sosna_1_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_red_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_sux_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_sux_01' - v(1219/1219), f(1830/1830)
| Other transfer...
| | * materials: 89
| | * shaders: 13
| | * shaders_xrlc: 10
| | * glows: 1
| | * portals: 3
| | * LODs: 29
| Loading lights...
| | *lighting*: HEMI: 196 lights
| | *lighting*: SUN: 49 lights
| | *lighting*: STATIC: 1 lights
| | * d-lights: 1
| Processing textures...
* ImageLibrary version: 3.17.0
* 26 supported formats
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\glow\glow_04.thm
| | - loading: glow\glow_04
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_small_stove.thm
| | - loading: prop\prop_small_stove
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\fx\fx_wood_fire.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_governmentbox_1.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\briks\briks_inside_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\mtl\mtl_rja_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\grnd\grnd_dry_gr_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_lampa_galogen.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\mtl\mtl_bochka_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\mtl\mtl_bochka_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_fake.thm
| | - loading: trees\trees_fake
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_bark_a_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkasux2.thm
| | - loading: trees\trees_vetkasux2
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_spil.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_bark_sosna_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_sosna_sux.thm
| | - loading: trees\trees_sosna_sux
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_elka.thm
| | - loading: trees\trees_elka
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_fake_kollision.thm
| | - loading: prop\prop_fake_kollision
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\veh\veh_btr_new.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\veh\veh_btr_br.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\veh\veh_kamaz_u_br.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_bark_a_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkagreen3.thm
| | - loading: trees\trees_vetkagreen3
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\grnd\grnd_rocks_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wood\wood_doski2.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_walls_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_sigaret.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkagreen5.thm
| | - loading: trees\trees_vetkagreen5
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_byaka1.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_anomal_ql.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkabig.thm
| | - loading: trees\trees_vetkabig
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_bark_sux.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkatopol.thm
| | - loading: trees\trees_vetkatopol
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_anomal_ql02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_vetkagreen1.thm
| | - loading: trees\trees_vetkagreen1
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wood\wood_table_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wood\wood_table_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_chair1.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_chair1a.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_bark_sosna_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_sosna.thm
| | - loading: trees\trees_sosna
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_sosna_low.thm
| | - loading: trees\trees_sosna_low
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_sosna_red_low.thm
| | - loading: trees\trees_sosna_red_low
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\trees\trees_sosna_sux_low.thm
| | - loading: trees\trees_sosna_sux_low
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_beton_5.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\door\door_gr1.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\grnd\grnd_land_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_dirt_2.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\briks\briks_br2.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\door\door_wood_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\mtl\mtl_rust_dark.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wood\wood_old.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\roof\roof_schiffer_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_beton_dirt_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\door\door_white_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\roof\roof_smola.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wood\wood_board_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\door\door_gate_metal_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wall\wall_stucco_03.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_beton_pod_03.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_grate_01.thm
| | - loading: prop\prop_grate_01
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wall\wall_walls_paint_02.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\wall\wall_ceiling_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\door\door_gate_metal_03.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_debris_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\crete\crete_walls_old_01.thm
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\prop\prop_barbwire3.thm
| | - loading: prop\prop_barbwire3
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\mtl\mtl_fence_01.thm
| | - loading: mtl\mtl_fence_01
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\terrain\terrain_arena.thm
| | - loading: terrain\terrain_arena
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\decal\decal_musor_pol2.thm
| | - loading: decal\decal_musor_pol2
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\decal\decal_plakat_1.thm
| | - loading: decal\decal_plakat_1
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\decal\decal_poteki_iov.thm
| | - loading: decal\decal_poteki_iov
| Post-process materials...
| | * sizes: V(60),F(120)

* New phase started: Optimizing...
| Processing...
| Processing... (0 verts removed)
| Removing degenerated/duplicated faces...
| Adjacency check...
| Cleanup...
| | 615 vertices removed. (41559 left)
| | 223 faces removed. (77167 left)
| Processing...
| | *** 104 junctions and 0 long edges found.

* New phase started: Adaptive HT...
| Tesselating...
| Tesselating...
| Precalculating...
| Converting faces...
| Models...
| Building search tree...
| Precalculating : base hemisphere ...
start new thread [worker-thread]
| | * THREAD #0: Started.
start new thread [worker-thread]
| | * THREAD #1: Started.
start new thread [worker-thread]
| | * THREAD #3: Started.
start new thread [worker-thread]
| | * THREAD #4: Started.
start new thread [worker-thread]
| | * THREAD #5: Started.
start new thread [worker-thread]
| | * THREAD #2: Started.
start new thread [worker-thread]
| | * THREAD #6: Started.
start new thread [worker-thread]
| | * THREAD #7: Started.
start new thread [worker-thread]
| | * THREAD #8: Started.
| | * THREAD #8: Task Completed.
| | * THREAD #7: Task Completed.
| | * THREAD #5: Task Completed.
| | * THREAD #6: Task Completed.
| | * THREAD #3: Task Completed.
| | * THREAD #2: Task Completed.
| | * THREAD #4: Task Completed.
| | * THREAD #0: Task Completed.
| | * THREAD #1: Task Completed.
| Gathering lighting information...

* New phase started: Building normals...
| Processing...
| | ::compact:: 45075 verts removed
| | 25444 vertices was duplicated 'cause of SM groups
| Models...
| Processing...
| | ::compact:: 506 verts removed
| | 33 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 238 verts removed
| | 374 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 177 verts removed
| | 124 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 243 verts removed
| | 190 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 1107 verts removed
| | 1083 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 204 verts removed
| | 234 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 4212 verts removed
| | 9521 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 4774 verts removed
| | 9578 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 312 verts removed
| | 221 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 294 verts removed
| | 209 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 330 verts removed
| | 231 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 534 verts removed
| | 102 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 493 verts removed
| | 707 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 556 verts removed
| | 137 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 401 verts removed
| | 39 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 312 verts removed
| | 221 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 330 verts removed
| | 231 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 294 verts removed
| | 209 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 312 verts removed
| | 221 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 294 verts removed
| | 209 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 330 verts removed
| | 231 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 1372 verts removed
| | 790 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 1960 verts removed
| | 885 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 2139 verts removed
| | 5932 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 1219 verts removed
| | 854 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 586 verts removed
| | 260 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 586 verts removed
| | 260 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 586 verts removed
| | 260 vertices was duplicated 'cause of SM groups
| Processing...
| | ::compact:: 1219 verts removed
| | 854 vertices was duplicated 'cause of SM groups

* New phase started: Building collision database...

* New phase started: CFORM: creating...
| Sorting...
| Collecting faces...
| Collecting vertices...

* New phase started: CFORM: collision model...
| Items to process: 83380
| | MultipleEdges: 14 faces
| Models...
| Saving...

* New phase started: Building tangent-basis...
| Declarator...
| Building inputs...
| | duplication: was[70519] / become[74810] - 6.1%
| Calculating basis...
| Retreiving basis...

* New phase started: Building rcast-CFORM model...
| Converting faces...

* New phase started: Building rcast-CFORM-mu model...
| Models...
| Building search tree...
| Saving...

* New phase started: LIGHT: Starting MU...
start new thread [worker-thread]

* New phase started: Resolving materials...
| | model 'trees\new_trees\trees_rostki_1_sux_05' - 2 subdivisions
| Calculating materials/subdivs...
| Perfroming subdivisions...
| Removing empty subdivs...
| Detaching subdivs...
| | 60 subdivisions.
| Isolating vertices...
| | ::compact:: 70122 verts removed

* New phase started: Build UV mapping...
| Processing...
| | model 'trees\new_trees\trees_rostki_1_sux_05' - REF_lighted.
| | model 'trees\new_trees\trees_spil_01' - 2 subdivisions
| | model 'trees\new_trees\trees_spil_01' - REF_lighted.
| | model 'trees\new_trees\trees_elka_sux_1_04' - 2 subdivisions
| | model 'trees\new_trees\trees_elka_sux_1_04' - REF_lighted.
| | model 'trees\new_trees\trees_elka_sux_1_05' - 2 subdivisions
| | 7547 subdivisions...
| Isolating vertices...
| | ::compact:: 41035 verts removed

* New phase started: Subdividing geometry...
| | model 'trees\new_trees\trees_elka_sux_1_05' - REF_lighted.
| | model 'trees\new_trees\trees_elka_sux_1_03' - 2 subdivisions
| Subdividing in space...
| | ! ERROR: model #7548 - split fail, faces: 446, s1/s2:445/1
| | ! ERROR: model #7548 - split fail, faces: 446, s1/s2:404/42
| | ! ERROR: model #7563 - split fail, faces: 159, s1/s2:52/107
| | ! ERROR: model #7564 - split fail, faces: 145, s1/s2:56/89
| | ! ERROR: model #7572 - split fail, faces: 255, s1/s2:254/1
| | ! ERROR: model #7576 - split fail, faces: 284, s1/s2:261/23
| | ! ERROR: model #7579 - split fail, faces: 235, s1/s2:209/26
| | ! ERROR: model #7580 - split fail, faces: 324, s1/s2:261/63
| | ! ERROR: model #7580 - split fail, faces: 286, s1/s2:9/277
| | ! ERROR: model #7580 - split fail, faces: 286, s1/s2:13/273
| | ! ERROR: model #7598 - split fail, faces: 206, s1/s2:61/145
| | ! ERROR: model #7599 - split fail, faces: 138, s1/s2:41/97
| | ! ERROR: model #7600 - split fail, faces: 136, s1/s2:50/86
| | ! ERROR: model #7602 - split fail, faces: 148, s1/s2:49/99
| | ! ERROR: model #7607 - split fail, faces: 314, s1/s2:24/290
| | ! ERROR: model #7607 - split fail, faces: 335, s1/s2:34/301
| | ! ERROR: model #7607 - split fail, faces: 132, s1/s2:59/73
| | ! ERROR: model #7608 - split fail, faces: 178, s1/s2:132/46
| | ! ERROR: model #7609 - split fail, faces: 137, s1/s2:81/56
| | ! ERROR: model #7612 - split fail, faces: 201, s1/s2:151/50
| | ! ERROR: model #7614 - split fail, faces: 260, s1/s2:37/223
| | ! ERROR: model #7614 - split fail, faces: 216, s1/s2:169/47
| | ! ERROR: model #7615 - split fail, faces: 212, s1/s2:149/63
| | ! ERROR: model #7618 - split fail, faces: 390, s1/s2:350/40
| | ! ERROR: model #7618 - split fail, faces: 209, s1/s2:158/51
| | ! ERROR: model #7627 - split fail, faces: 156, s1/s2:100/56
| | ! ERROR: model #7628 - split fail, faces: 496, s1/s2:58/438
| | ! ERROR: model #7628 - split fail, faces: 254, s1/s2:21/233
| | ! ERROR: model #7629 - split fail, faces: 153, s1/s2:96/57
| | ! ERROR: model #7630 - split fail, faces: 533, s1/s2:472/61
| | ! ERROR: model #7630 - split fail, faces: 174, s1/s2:115/59
| | ! ERROR: model #7633 - split fail, faces: 133, s1/s2:56/77
| | ! ERROR: model #7635 - split fail, faces: 146, s1/s2:63/83
| | ! ERROR: model #7637 - split fail, faces: 149, s1/s2:93/56
| | ! ERROR: model #7639 - split fail, faces: 162, s1/s2:48/114
| | ! ERROR: model #7640 - split fail, faces: 148, s1/s2:95/53
| | ! ERROR: model #7641 - split fail, faces: 131, s1/s2:78/53
| | ! ERROR: model #7661 - split fail, faces: 238, s1/s2:202/36
| | ! ERROR: model #7679 - split fail, faces: 169, s1/s2:58/111
| | ! ERROR: model #7684 - split fail, faces: 180, s1/s2:26/154
| | ! ERROR: model #7690 - split fail, faces: 174, s1/s2:61/113
| | ! ERROR: model #7697 - split fail, faces: 219, s1/s2:26/193
| | ! ERROR: model #7699 - split fail, faces: 173, s1/s2:20/153
| | ! ERROR: model #7715 - split fail, faces: 133, s1/s2:49/84
| | ! ERROR: model #7718 - split fail, faces: 238, s1/s2:175/63
| | ! ERROR: model #7719 - split fail, faces: 131, s1/s2:48/83
| | ! ERROR: model #7722 - split fail, faces: 165, s1/s2:140/25
| | ! ERROR: model #7725 - split fail, faces: 137, s1/s2:55/82
| | ! ERROR: model #7727 - split fail, faces: 149, s1/s2:90/59
| | ! ERROR: model #7735 - split fail, faces: 141, s1/s2:15/126
| | ! ERROR: model #7746 - split fail, faces: 351, s1/s2:28/323
| | ! ERROR: model #7753 - split fail, faces: 128, s1/s2:100/28
| | ! ERROR: model #7757 - split fail, faces: 157, s1/s2:118/39
| | ! ERROR: model #7812 - split fail, faces: 130, s1/s2:106/24
| | 7832 subdivisions.
mem usage before clear pool: 181968896
mem usage after clear pool: 159891456

* New phase started: LIGHT: Implicit...
| Sorting faces...
| Lighting implicit map 'terrain\terrain_arena'...
start new thread [worker-thread]
| | * THREAD #0: Started.
start new thread [worker-thread]
| | * THREAD #1: Started.
start new thread [worker-thread]
| | * THREAD #2: Started.
start new thread [worker-thread]
| | * THREAD #3: Started.
start new thread [worker-thread]
| | * THREAD #4: Started.
start new thread [worker-thread]
| | * THREAD #5: Started.
start new thread [worker-thread]
| | * THREAD #6: Started.
start new thread [worker-thread]
| | * THREAD #7: Started.
| | model 'trees\new_trees\trees_elka_sux_1_03' - REF_lighted.
| | model 'trees\new_trees\trees_elka_sux_1_02' - 2 subdivisions
| | model 'trees\new_trees\trees_elka_sux_1_02' - REF_lighted.
| | model 'statics\vehicles\cars\btr_br' - 2 subdivisions
| | model 'statics\vehicles\cars\btr_br' - REF_lighted.
| | model 'statics\vehicles\cars\kamaz_fura' - 1 subdivisions
| | model 'statics\vehicles\cars\kamaz_fura' - REF_lighted.
| | model 'trees\new_trees\bush_1_01' - 2 subdivisions
| | model 'trees\new_trees\bush_1_01' - REF_lighted.
| | model 'trees\new_trees\bush_1_sux_01' - 2 subdivisions
| | model 'trees\new_trees\bush_1_sux_01' - REF_lighted.
| | model 'trees\new_trees\bush_1_sux_02' - 2 subdivisions
| | model 'trees\new_trees\bush_1_sux_02' - REF_lighted.
| | model 'trees\new_trees\trees_rostki_1_sux_01' - 2 subdivisions
| | model 'trees\new_trees\trees_rostki_1_sux_01' - REF_lighted.
| | model 'trees\new_trees\trees_rostki_1_sux_02' - 2 subdivisions
| | model 'trees\new_trees\trees_rostki_1_sux_02' - REF_lighted.
| | model 'trees\new_trees\trees_rostki_1_sux_03' - 2 subdivisions
| | model 'trees\new_trees\trees_rostki_1_sux_03' - REF_lighted.
| | model 'trees\new_trees\trees_rostki_1_sux_04' - 3 subdivisions
| | model 'trees\new_trees\trees_rostki_1_sux_04' - REF_lighted.
| | model 'trees\new_trees\bush_1_sux_03' - 2 subdivisions
| | model 'trees\new_trees\bush_1_sux_03' - REF_lighted.
| | model 'trees\new_trees\bush_1_02' - 2 subdivisions
| | model 'trees\new_trees\bush_1_02' - REF_lighted.
| | model 'trees\new_trees\bush_1_03' - 2 subdivisions
| | model 'trees\new_trees\bush_1_03' - REF_lighted.
| | model 'trees\new_trees\bush_2_01' - 2 subdivisions
| | model 'trees\new_trees\bush_2_01' - REF_lighted.
| | model 'trees\new_trees\bush_2_03' - 2 subdivisions
| | model 'trees\new_trees\bush_2_03' - REF_lighted.
| | model 'trees\new_trees\bush_2_02' - 2 subdivisions
| | model 'trees\new_trees\bush_2_02' - REF_lighted.
| | model 'trees\new_trees\trees_anomal\trees_anomal_01a' - 3 subdivisions
| | model 'trees\new_trees\trees_anomal\trees_anomal_01a' - REF_lighted.
| | model 'trees\new_trees\trees_anomal\trees_anomal_02c' - 3 subdivisions
| | model 'trees\new_trees\trees_anomal\trees_anomal_02c' - REF_lighted.
| | model 'trees\new_trees\trees_anomal\trees_anomal_03b' - 3 subdivisions
| | model 'trees\new_trees\trees_anomal\trees_anomal_03b' - REF_lighted.
| | model 'trees\new_trees\trees_sosna_1_01' - 3 subdivisions
| | model 'trees\new_trees\trees_sosna_1_01' - REF_lighted.
| | model 'trees\new_trees\trees_sosna_1_01_low' - 3 subdivisions
| | model 'trees\new_trees\trees_sosna_1_01_low' - REF_lighted.
| | model 'trees\new_trees\trees_sosna_1_red_01_low' - 3 subdivisions
| | model 'trees\new_trees\trees_sosna_1_red_01_low' - REF_lighted.
| | model 'trees\new_trees\trees_sosna_1_sux_01_low' - 3 subdivisions
| | model 'trees\new_trees\trees_sosna_1_sux_01_low' - REF_lighted.
| | model 'trees\new_trees\trees_sosna_1_sux_01' - 3 subdivisions
| | model 'trees\new_trees\trees_sosna_1_sux_01' - REF_lighted.
start new thread [worker-thread]
start new thread [worker-thread]
start new thread [worker-thread]
start new thread [worker-thread]
| | * THREAD #0: Task Completed.
| | * THREAD #6: Task Completed.
| | * THREAD #7: Task Completed.
| | * THREAD #1: Task Completed.
| | * THREAD #2: Task Completed.
| | * THREAD #5: Task Completed.
| | * THREAD #4: Task Completed.
| | * THREAD #3: Task Completed.
| Processing lightmap...
| Mixing lighting with texture...
| Saving base...
stack trace:

! Failed to copy text to the clipboard: Video subsystem must be initialized to set clipboard text
stack trace:


C:\Windows\system32\ucrtbase.DLL at 73F0FF67 strnlen() + 183 byte(s)
C:\Windows\system32\ucrtbase.DLL at 73EF8B82 _stdio_common_vsscanf() + 98 byte(s)
C:\Windows\system32\ucrtbase.DLL at 73EF8B3F _stdio_common_vsscanf() + 31 byte(s)
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC_Light.dll at 72E659B1 ImplicitNetWait() + 12449 byte(s)
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC_Light.dll at 72E6308B ImplicitNetWait() + 1915 byte(s)
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC.exe at 00E52B6D
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC.exe at 00E8BF5C
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC.exe at 00E8C124
D:\apps\sdk_cop\editors\bin\compilers_open\xrLC.exe at 00EC4F76
C:\Windows\syswow64\kernel32.dll at 754B344D BaseThreadInitThunk() + 18 byte(s)
C:\Windows\SysWOW64\ntdll.dll at 77C09802 RtlInitializeExceptionChain() + 99 byte(s)
C:\Windows\SysWOW64\ntdll.dll at 77C097D5 RtlInitializeExceptionChain() + 54 byte(s)


Rx64
[06/17/19 16:50:36] OpenXRay Rx64 build 7308, Feb 8 2019
[06/17/19 16:50:36] AppVeyor build 221 from commit[6b42da4f08159ef7c7861c3ad6838f9a0838f774] branch[HEAD] (built by OpenXRay)
[06/17/19 16:50:36]
[06/17/19 16:50:36] command line
[06/17/19 16:50:36]
[06/17/19 16:50:36] * CPU features: RDTSC, MMX, SSE, SSE2, SSE3, SSE4.1, SSE4.2, AVX
[06/17/19 16:50:36] * CPU cores/threads: 8/8
[06/17/19 16:50:36] * CPU0 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU1 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU2 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU3 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU4 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU5 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU6 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36] * CPU7 current freq: 3901 MHz, max freq: 3901 MHz
[06/17/19 16:50:36]
[06/17/19 16:50:36] Initializing File System...
[06/17/19 16:50:36] using fs-ltx fsgame.ltx
[06/17/19 16:50:36] FS: 46962 files cached 0 archives, 11636Kb memory used.
[06/17/19 16:50:36] Init FileSystem 2.389873 sec
start new thread [log-update]
"LevelBuilder v4.1" beta build
Compilation date: Feb 8 2019

Startup time: 16:50:36

* New phase started: Reading project [arena]...
| | version: 18

* New phase started: Converting data structures...
| Vertices...
| | * vertices: 42174
| Faces...
| | * faces: 77390
| Models and References
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_05' - v(506/506), f(960/960)
| | * Loading model: 'trees\new_trees\trees_spil_01' - v(238/238), f(442/442)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_04' - v(177/177), f(242/242)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_05' - v(243/243), f(330/330)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_03' - v(1107/1107), f(1590/1590)
| | * Loading model: 'trees\new_trees\trees_elka_sux_1_02' - v(204/204), f(250/250)
| | * Loading model: 'statics\vehicles\cars\btr_br' - v(4212/4212), f(14236/14236)
| | * Loading model: 'statics\vehicles\cars\kamaz_fura' - v(4774/4774), f(15674/15674)
| | * Loading model: 'trees\new_trees\bush_1_01' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_1_sux_01' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_1_sux_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_01' - v(534/534), f(1006/1006)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_02' - v(493/493), f(1180/1180)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_03' - v(556/556), f(1042/1042)
| | * Loading model: 'trees\new_trees\trees_rostki_1_sux_04' - v(401/401), f(758/758)
| | * Loading model: 'trees\new_trees\bush_1_sux_03' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_1_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\bush_1_03' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_2_01' - v(312/312), f(505/505)
| | * Loading model: 'trees\new_trees\bush_2_03' - v(294/294), f(481/481)
| | * Loading model: 'trees\new_trees\bush_2_02' - v(330/330), f(536/536)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_01a' - v(1372/1372), f(2651/2651)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_02c' - v(1960/1960), f(3776/3776)
| | * Loading model: 'trees\new_trees\trees_anomal\trees_anomal_03b' - v(2139/2139), f(4313/4313)
| | * Loading model: 'trees\new_trees\trees_sosna_1_01' - v(1219/1219), f(1830/1830)
| | * Loading model: 'trees\new_trees\trees_sosna_1_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_red_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_sux_01_low' - v(586/586), f(915/915)
| | * Loading model: 'trees\new_trees\trees_sosna_1_sux_01' - v(1219/1219), f(1830/1830)
| Other transfer...
| | * materials: 89
| | * shaders: 13
| | * shaders_xrlc: 10
| | * glows: 1
| | * portals: 3
| | * LODs: 29
| Loading lights...
| | *lighting*: HEMI: 196 lights
| | *lighting*: SUN: 49 lights
| | *lighting*: STATIC: 1 lights
| | * d-lights: 1
| Processing textures...
* ImageLibrary version: 3.17.0
* 26 supported formats
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\glow\glow_04.thm
| | - loading: glow\glow_04
| | processing: D:\apps\sdk_cop\editors\gamedata\textures\\prop_small_stove.thm

FATAL ERROR

[error] exp​ression : THM
[error] Function : CBuild::Load
[error] File : c:\projects\xray-16\src\utils\xrlc\build_load.cpp
[error] Line : 323
[error] Description : D:\apps\sdk_cop\editors\gamedata\textures\\prop_small_stove.thm


На сборках Mixed такая же ерунда. На ориг. компиле всё норм.
aka_sektor
Цитата(Yara @ 17.06.2019, 17:40) *
[error] exp​ression : THM
[error] Function : CBuild::Load
[error] File : c:\projects\xray-16\src\utils\xrlc\build_load.cpp

А это разве не 2 вариант вылета: https://modders.pro/XrLC:Build_Load.cpp
SkyLoader
Сейчас уже 384 билд. 221 - это с каких-то древних времен.
aka_sektor
SkyLoader, внатуре. blink.gif

На кой хрен вообще это, уберите: https://github.com/OpenXRay/xray-16/releases
cjayho
QUOTE (Xottab_DUTY @ 22.12.2018, 20:07) *
В прошлое воскресенье один из участников команды – SkyLoader – записал видео-сравнение состояния OpenGL-рендера в августе и в декабре.

Результат работы за несколько месяцев впечатляет – удалось исправить большое количество багов, благодаря чему OpenGL-рендер лишь немного уступает DirectX-варианту.



Не знаю как у кого, но у меня на ноуте FPS на openGL рендере раза в два ниже чем на dx9-11.
на директикс11 обычно более 30, вполне играбельно, на опенгл 10-12...15
NotecX
Цитата(cjayho @ 20.06.2019, 11:15) *
Не знаю как у кого, но у меня на ноуте FPS на openGL рендере раза в два ниже чем на dx9-11.
на директикс11 обычно более 30, вполне играбельно, на опенгл 10-12...15

Fedora 30, Radeon RX 570 8Gb (Mesa 19.0.6), Intel Xeon x3470.
В меню от низкого fps (фиксировано 22 fps) дергается курсор, в игре при взгляде на Скадовск 25 fps, в даль 14 fps, в небо 18 fps.
Сравнить бы ванильный с dxvk, но в стиме игры нет.
Diesel
Цитата(cjayho @ 20.06.2019, 13:15) *
Не знаю как у кого, но у меня на ноуте FPS на openGL рендере раза в два ниже чем на dx9-11.
на директикс11 обычно более 30, вполне играбельно, на опенгл 10-12...15


На видео обратил внимание на дальность отрисовки теней травы. Там тень не ограничивается? Вот вам и лаги - низкий фпс. Тень травы жрёт много - очень много, если её не оптимизировать.
NotecX
Цитата(Дизель @ 21.06.2019, 12:22) *
теней травы

Лично у меня в том, что собрал с github (OpenXRay Rx64 build 7435, Jun 15 2019), теней от травы нет, а фпс низкий даже в меню. Так что вряд ли.
Modera
Цитата(cjayho @ 20.06.2019, 11:15) *
Не знаю как у кого, но у меня на ноуте FPS на openGL рендере раза в два ниже чем на dx9-11.
на директикс11 обычно более 30, вполне играбельно, на опенгл 10-12...15

Это всё потому что в GL рендере VBO используется. Надо было дисплейные списки использовать, они быстрее.
iOrange
Цитата(Modera @ 21.06.2019, 17:35) *
Это всё потому что в GL рендере VBO используется.

Звучит очень странно - GL VBO == DX ID3D11Buffer. Какие дисплейные списки в наше то время?
Да, 20 лет назад использовали display lists, ибо это, по сути, просто собранный command buffer.
Грамотное использование VAO (который включает в себя VBO) - и можно получить даже больший перформанс чем в Dx (у меня получалось)
cjayho
QUOTE (NotecX @ 21.06.2019, 10:01) *
Fedora 30, Radeon RX 570 8Gb (Mesa 19.0.6), Intel Xeon x3470.
В меню от низкого fps (фиксировано 22 fps) дергается курсор, в игре при взгляде на Скадовск 25 fps, в даль 14 fps, в небо 18 fps.
Сравнить бы ванильный с dxvk, но в стиме игры нет.


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

QUOTE (Дизель @ 21.06.2019, 11:22) *
На видео обратил внимание на дальность отрисовки теней травы. Там тень не ограничивается? Вот вам и лаги - низкий фпс. Тень травы жрёт много - очень много, если её не оптимизировать.


ну не считайте меня за полного идиота, сравнивалось-то с одинаковыми настройками.

--------------

Зы. я кстати заметил что directx11 заметно быстрее даже по сравнению с directx9...10, причем на многих играх, не только св сталкаче, но и в метро-2033 (не редукс, тестил на оригинале)
интересно с чем это связано
Diesel
cjayho, вот как так? Делки то разные? Логично, что не может быть одинаковых, в 100%, настроек рендера.

Да. ладно. Я сам по себе туплю, надо же веселить публику кому то. А может я прав? У теней травы есть очистка в буфере. И если запороть или отключить очистку, то там такой лаг начинается, что мама не горюй. А делки разные - вот к чему я.
Modera
Цитата(iOrange @ 22.06.2019, 00:50) *
Звучит очень странно - GL VBO == DX ID3D11Buffer. Какие дисплейные списки в наше то время?

Да я же стебусь biggrin.gif
Но рациональное зерно в этом есть. Дисплейные списки могут быть быстрее VBO при неправильном использовании последнего, т.к. в случае с дисплейными списками драйвер может оптимизировать геометрию как ему заблагорассудится, а в случае VBO драйвер будет вынужден использовать геометрию от приложения в том виде в каком она есть. Ещё один момент почему списки могут быть быстрее это отсутствие индексного буфера, конечно API теоретически позволяет использовать индексы в дисплейном списке (glArrayElement), но я не думаю что это хоть где-то реализовано, ведь данные в массивах можно изменять даже внутри glBegin/glEnd, а сравнение вершин это операция затратная по времени.

Даже сейчас есть загуглить "opengl vbo vs display lists" на каком-то англоязычном форуме найдётся тема за 2006 год в которой доказывается что VBO выдаёт 28 fps, а дисплейные списки 75 fps. Но там НЁХ - человек создал отдельные буферы под нормали и под точки. Если так делать то можно доказать всё что угодно.
Короче это нужно проверить. Без всяких ухищрений, а прям по факту. Взять готовое приложение которое использует VBO и переписать на дисплейные списки, результат сравнить с тем что было.

Очень часто нам врут что всё новое есть лучшее. Я недавно проверял теорию о том что файловая система FAT32 быстрее NTFS. Проверял на Windows 10, как раз у меня есть виртуалка с Win10 установленной на FAT. Оказалось что FAT быстрее в создании удалении файлов, но медленнее в открытии. Потом я затестил тоже самое на Windows XP, и результаты схожи, но в пару раз быстрее как на FAT так и на NTFS. Но кого это волнует, всё-ровно говорят что Win10 лучшая.
NotecX
Цитата(cjayho @ 22.06.2019, 02:00) *
а что, на такие видяхи fglrx уже не делают? интересно было бы посмотреть на пропретарном драйвере как бегает. открытый драйвер всегда имел проблемы с оптимизацией.

Тяжело на такое ответить, потому что толком за историей развития драйверов amd на inux не следил. Попробую тезисно, может где-то что-то перевру.
- fglrx умер 4 года назад, в 2015 году, затем они разделили ядерную и юзерспейсную часть драйвера, ядерная полностью свободная, а юзерспейсная имеет два варианта - свободный amdgpu и проприетарный amdgpu-pro
- открытым драйвером amdgpu занимается сама amd
- проприетарный amdgpu-pro сливает открытому в производительности; знаю, что профит от закрытого драйвера есть в плане хорошей реализации OpenCL, еще пишут, что умеет в OpenGL 4.6 (открытый максимум 4.5, но игр с 4.6 нет, есть с vulkan, и он на открытом прекрасно работает)
- проприетарный amdgpu-pro официально поддерживается только в дистрибутивах длительной поддержки (ubuntu 2018 года (18.04), также RHEL/CentOS, SLED/SLES), поэтому лично мне он абсолютно не интересен.
- как бегает на проприетарном драйвере OpenXRay 1.6.02 показать не могу, но могу показать как на открытом работает Чистое Небо через валвовский proton с трансляцией dx10 в vulkan (просто чтобы показать, что открытый драйвер это не то же самое, когда существовал fglrx)
Скриншоты



Xottab_DUTY
ПРЕ-РЕЛИЗ ДОЛГОЖДАННОГО ОБНОВЛЕНИЯ!

Краткий список изменений:
- Ускорение системы ввода, теперь игра будет более управляемой при низкой частоте кадров.
- Переделанный основной игровой цикл на использование двух потоков позволил сделать игру ещё более отзывчивой. Теперь окно игры всегда будет появляться/скрываться при нажатии Alt+Tab.
- Меньше зависаний при спавне сталкеров и монстров благодаря простому прекэшированию.
- Обновление LuaJIT до версии 2.1 с улучшенной поддержкой 64-битных систем и увеличенной скоростью работы.
- Улучшенная поддержка систем с несколькими мониторами, которая хоть уже и была в предыдущем релизе, но была недоработана.
- Многочисленные улучшения рендера. Больше всего изменений было проведено в OpenGL-рендере, были исправлены баги, которые досаждали пользователей в 221-м релизе. Также были проведены работы по подготовке к объединению DX10 и DX11 рендеров.
- Поддержка Чистого Неба в тестовом режиме. Теперь движок может запускать не только Зов Припяти, но и Чистое Небо! Конечно, там есть небольшие огрехи с интерфейсом. Кроме того, пока что, в этом режиме работают только статический и OpenGL-рендер. Любители динамического освещения как раз смогут оценить исправленный рендер, не зря же мы его делали. Заодно и помогут найти оставшиеся баги =) Инструкции по запуску будут опубликованы чуть позже в нашей группе ВКонтакте.
- Подготовка к запуску Тени Чернобыля. На нашем движке можно будет запускать не только Чистое Небо, но и Тень Чернобыля. Для этого были проведены многочисленные работы над движком. Нам даже удалось запустить игру и узнать, что нас спас какой-то мужик... Но игрокам это пока недоступно, оно ещё не готово, дождитесь пожалуйста. Либо, если вы программист, то заходите к нам в дискорд, возможно вы сможете помочь нам.


Перед скачиванием ВНИМАТЕЛЬНО прочитайте инструкцию по установке: 
https://github.com/OpenXRay/xray-16/wiki/[R...новить-и-играть

Скачать можно здесь: https://github.com/OpenXRay/xray-16/releases/tag/421
cjayho
QUOTE (Xottab_DUTY @ 02.07.2019, 06:02) *
ПРЕ-РЕЛИЗ ДОЛГОЖДАННОГО ОБНОВЛЕНИЯ!


релиз х64, стимовская версия ЧН, при клике пункта меню "опции" - вылет, при начале новой игры (опенгл рендер, другие не пробовал) - синий мусор на экране и вылет.

PS. ЗП, директикс 10 и 11:





фпс около 25

опенгл



фпс 10, скриншотилка сломана
Xottab_DUTY
cjayho, нужен отчёт вылета, он находится в папке папка_с_игрой/_appdata_/reports

По поводу FPS, какие настройки? Не максимальные, случаем? Дальность видимость очень жручая, её нельзя просто так выкручивать. Наша середина это максимум ЗП. (т.е. мы увеличили предел этой настройки)
Cossack-HD
Цитата(Xottab_DUTY @ 02.07.2019, 20:14) *
cjayho, нужен отчёт вылета, он находится в папке папка_с_игрой/_appdata_/reports

По поводу FPS, какие настройки? Не максимальные, случаем? Дальность видимость очень жручая, её нельзя просто так выкручивать. Наша середина это максимум ЗП. (т.е. мы увеличили предел этой настройки)

Добавьте поле для ввода значения вручную (если ковырять конфиг "не по-барски"), а ползунок залимитируйте до адекватных значений.
Уж сколько лет на одни и те-же грабли наступает коммьюнити...
SkyLoader
В пре-релизе отсутствуют некоторые правки по оптизимации опенгл рендера. Эти правки будут включены в релизную версию.
cjayho
QUOTE (Xottab_DUTY @ 02.07.2019, 17:14) *
По поводу FPS, какие настройки? Не максимальные, случаем?


по поводу фпс, на директиксах на моем ноуте он всегда такой был. А вот то что опенгл рендер в два раза меньший фпс имеет при тех же настройках, то это проблема.
cjayho
QUOTE (SkyLoader @ 02.07.2019, 20:35) *
В пре-релизе отсутствуют некоторые правки по оптизимации опенгл рендера. Эти правки будут включены в релизную версию.


а что значит релиз и предрелиз? ты хочешь сказаь что как релиз выкатите то там уже и делать ничего не останется? smile.gif
Это по моему из оперы есть ли жизнь после "}"

------------

А можно я немного невежливо поворчу?
Во всех человеческих движках для портабельности на консоли стараются выпилить все дллки и по максимуму упаковать в эксешник. Например двигло doom3, когда переделывали в doom3BFG, то полностью упаковали в эксешник.
Двигло Метро тоже все упаковано в один эксешник.
Двигло же сталкера расчленили в оригинале (ЗП) аж на 29 .dll, причем которые поодиночке никогда не меняются а меняется сразу весь комплект бинов. Но разработчикам OpenXray и этого показалось мало. Они расчленили двигло на 54 .dll. Правильно, надо же чем-то заполнять папку bin, одиноко лежащий stalker-CoP.exe в корневой папке игры не выглядит настолько солидно.
Зачем вообще делить рендеры на отдельные дллки, все равно смена рендера = перезагрузка игры? Фирменная "фича" Шишковцова/Максимчука, ставшая традиционной для их движков, такая наследственная болезнь вроде гемофилии. Hеужели так трудно выгрузить старый рендер, убрать рендер контекст, загрузить и проинициализировать новый рендер? В CryEngine жe это както сделали
А по факту половину каждого рендера занимают одни и те же файлы как в р1 так и сверхсовременном супернавороченном DX11.
Все равно иксрей - не универсальное двигло, и какие либо серьезные изменения геймплея приведут к перекомпиляции.

Кроме того вполне неплохо бы добавить какую-то галку "оптимизация под SSD", где первым делом отключались бы все префетчинги и readahead, зря жрущие оператву гигабайтами и замедляющие (причем многократно!) процесс загрузки.

QUOTE (Xottab_DUTY @ 02.07.2019, 17:14) *
cjayho, нужен отчёт вылета, он находится в папке папка_с_игрой/_appdata_/reports


Нажмите для просмотра прикрепленного файла
Нажмите для просмотра прикрепленного файла
cjayho
В довесок к предыдущему - не знаю как в ЗП, но в ТЧ в глубинах xrGame есть один интересный дефайн, который называется SILENT_COMBAT, его неплохо бы вывести в виде настройки консоли.
Этот дефайн заставляет неписей при боевке заткнуть свои хрюсла и стреляться молча без дурацких выкриков про обходи эту шелупонь и размолотим. В 2004-м эта фишка (наблюдающаяся и в играх серсии метро) была неуклюжей попыткой сымитировать командную работу неписей, но мы то прекрасно знаем что к чему.
В общем меньше слов больше дела.
Туда же можно отключать дурацкое пыхтение неписей при боевке, когда каждый из них в меру своих легких и голосоввых связок косплеит нападающего кровососа.
Еще туда же можно убрать совершенно ужасную, дурацкую "надгробную" фразу непися, добивающего врага контрольным в голову. Вообще сам факт того что они это делают поголовно как-то имхо неправилен. Я думаю куда правдоподобнее было бы то что спустя некоторое время непись сам бы помер от ранения. Вообще странно наблюдать как сталкер новичок с шутками-прибаутками достреливает раненого бандоса, такое не всякий киллер или военный сможет. Я еще поверю если молча дострелит, стараясь жертве не смотреть в глаза.

----

Зы. убрал дампы с отчетами, не хочу ни с кем делиться лицензионными ключами от игрульки, сорри.
xrModder
Всё делал по инструкции для запуска ЧН, меню работает, но вылетает при нажатии на опции, а в игре почему-то чёрный экран.
Xottab_DUTY
cjayho, блин, можешь мне их в личку скинуть тогда, я скачать не успел. ohmy.gif

Объединение библиотек в один исполняемый файл никак, абсолютно никак не улучшает портативность движка. Вообще никоим образом. Зато, наоборот, разделение на библиотеки ускоряет компиляцию:
В 2015-м году OpenXRay собирался один час. Сейчас же, после всех разделений на библиотеки и других оптимизаций, он собирается 10 минут.

Префетчинги, скорее всего, отключены не будут. Чтение из оперативки всегда быстрее, чем читать с диска, даже если этот диск – ссд. Но, если шо, всегда есть ключ -noprefetch.

По смене рендеров без перезагрузки – может быть, потом, как-нибудь. Фича классная, но это не так важно, по сравнению с другими вещами, которые можно улучшить в рендере. =)

По болтливым неписям.. Да, кстати, хорошо замечено. Можно что-то придумать, например, в зависимости от ранга и случайного числа решать, будет ли он стрелять с озвучкой или молча. Ну и что-то придумать для тихого боя, тоже какие-то факторы, когда неписи решат орать им или нет.
hi_flyer
Xottab_DUTY,
У вас в движке поддержка р1 осталась, вы случаем не правили неосвещаемость детейлов фонариком и дин. источниками света?
Xottab_DUTY
hi_flyer, осталась, конечно. Освещаемость нам починил RainbowZerg. Вот его PR: https://github.com/OpenXRay/xray-16/pull/217
cjayho
QUOTE (Xottab_DUTY @ 03.07.2019, 17:34) *
1) блин, можешь мне их в личку скинуть тогда, я скачать не успел. ohmy.gif

2) Объединение библиотек в один исполняемый файл никак, абсолютно никак не улучшает портативность движка. Вообще никоим образом. Зато, наоборот, разделение на библиотеки ускоряет компиляцию:
В 2015-м году OpenXRay собирался один час. Сейчас же, после всех разделений на библиотеки и других оптимизаций, он собирается 10 минут.

3) Префетчинги, скорее всего, отключены не будут. Чтение из оперативки всегда быстрее, чем читать с диска, даже если этот диск – ссд. Но, если шо, всегда есть ключ -noprefetch.


1) ok, скину. UPD: уже

2), вот как разработчик doom3BFG об этом высказался:

QUOTE
The architecture differs significantly from the original Doom III: The solution now compiles into one monolithic executable (Doom III compiled to one executable and one DLL containing the game logic).

This was motivated by two reasons (according to the main Developer Brian Harris ):

Consoles such as PS3/Xbox360 don't have very good support for dlls.
Speed up development. With dlls, you have to be very careful about memory -- you can't allocate in one and free in the other. This makes things much more difficult and creates very hard to track down bugs.

-----

перевод:

Архитектура значительно отличается от таковой в Doom3: проект сейчас собирается в один монолитній исполняемый файл (дум3 собиралась в один исполняемый файл и одну длл, вмещающую игровую логику).

Тому стало причиной два фактора (по словам главного разработчика Брайана Харриса):

Консоли, вроде PS3/Xbox360 не имеют достаточно хорошей поддержки dll
Ускорение разработки. С dll вам необходимо быть предельно осторожным с памятью -- невозможно выделить память в одном а освободить в другом. Это значительно усложняет процесс и добавляет трудоемкости в отлове багов.


короче не линуксом единым жива портабельность. И видимо разработчики метро, doom3BFG, rage, GTA san andreas, racedriver:GRID, короче всех игрулек которіе нормально работают на консолях, это отлично понимают.

3) просто берем секундомер в левое переднее щупальце и засекаем время загрузки сейва.

с -noprefetch на ссд загружаемся за 40,5 секунд.
без -- за 48,3.

Вывод я думаю очевиден.

Зы. кстати игрули серии Метро никогда не юзали префетчинг, а скорости загрузки можно только позавидовать.

Ззы, я уже молчу о совсем разных реализациях загрузки длл в разных ОС
Xottab_DUTY
Хорошо, посмотрю отчётики)

Цитата(cjayho @ 04.07.2019, 16:48) *
короче не линуксом единым жива портабельность. И видимо разработчики метро, doom3BFG, rage, GTA san andreas, racedriver:GRID, короче всех игрулек которіе нормально работают на консолях, это отлично понимают.

Дак вот в чём дело, в консолях, оказывается. Для них нужна, в первую очередь, поддержка GSC. Без поддержки компании нам даже SDK для консолей не дадут. И, хотя, можно достать его из-под полы, в этом нет никакого смысла, ибо мы больше уйдём в минус по затраченным силам и времени, чем портирование на консоли даст хоть какую-то пользу.
Но я ничего не говорю против монолитного бинарника. Просто, на данном этапе, справляемся без него.
А план по внедрению статической компоновки (это как раз когда все библиотеки вшиваются в один файл) был заведён ещё в прошлом году: https://github.com/OpenXRay/xray-16/issues/210

Цитата(cjayho @ 04.07.2019, 16:48) *
с -noprefetch на ссд загружаемся за 40,5 секунд.
без -- за 48,3.

Дело не в загрузке, а дело в лагах, которые происходят без префетчинга. Без него игра лагает, т.к. ресурсы загружаются синхронно и игра ждёт, когда модели и текстуры будут прочитаны с диска. Конечно, игра лагает даже с включенным префетчем, но с ним она поменьше лагает.
А чтобы лагов совсем не было, это надо достаточно хорошо перепилить движок. Мы ещё не настолько его перепилили)

Метро, да. Хорошо сделали. Ну оно и понятно: Олесь и AlexMX учли свои ошибки, сделанные в X-Ray.
Zagolski
Цитата(Xottab_DUTY @ 04.07.2019, 19:43) *
Олесь и AlexMX

Они сейчас метровским движком занимаются?
atanda
Цитата(Zagolski @ 04.07.2019, 20:23) *
Они сейчас метровским движком занимаются?

Хз как AlexMX, но Олесь точно
https://schedule.gdconf.com/session/explori...y-nvidia/865258

https://www.gdcvault.com/play/1026159/
15:38


где-то было ещё одно видео, но я не нашёл

ну и вот фото с членами VG на прошедшем gdc.
+
Xottab_DUTY
AlexMX у них технический директор (TD), а Олесь главный инженер. (CTO)

https://www.linkedin.com/in/alexander-maximchuk-aa782214/
https://www.linkedin.com/in/olesshishkovtsov/
atanda
Цитата(Xottab_DUTY @ 04.07.2019, 20:45) *
AlexMX у них технический директор

Нигде давно про него не слышал
На текущий момент есть ли, не знаю... пруфы?
Xottab_DUTY
buffy, я ссылку дал на его LinkedIn, где он помечен как CTO в 4A Games. В фейсбуке точно также. Это не 100%-е пруфы, конечно, но ничего более нэ маем.
cjayho
QUOTE (Xottab_DUTY @ 04.07.2019, 18:43) *
Метро, да. Хорошо сделали. Ну оно и понятно: Олесь и AlexMX учли свои ошибки, сделанные в X-Ray.


Я чтото сильно сомневаюсь что в 4а двигле нету ни байта от сырцов иксрея. Многие вещи проще оставить как есть чем писать с нуля.
По сути если из иксрея убрать алайф, перепилить интерфейс и прикрутить стриминг то и получится двигло 4А. Тем более времени хватало, между идеей запилить игру метро и самим выходом игры прошло лет семь. Разрабов 4А из GSC уволили скорее всего потому что они в рабочее время пилили метро а не сталкер.
atanda
Цитата(cjayho @ 05.07.2019, 16:46) *
получится двигло 4А.

Интересно какого года? Думаю, если бы там что-то и оставалось, то уже давно переписали=)
aka_sektor
Цитата(cjayho @ 05.07.2019, 16:46) *
Разрабов 4А из GSC уволили скорее всего потому что они в рабочее время пилили метро а не сталкер.

Где-то читал недавно, или слышал, мол, Прохоров сам ушёл, т.к. был недоволен зарплатой.
Ну а остальные 3A из 4A, как известно, ушли за ним следом... tongue.gif
mortan
Скачайте диздоки тч и посмотрите, как работали прохоров и прочие - (!!!) трижды скопированный один и тот же документ без каких либо изменений явно демонстрировался руководству как отчёт о проделанной ( нет ) работе)
NanoBot-AMK
Цитата(Xottab_DUTY @ 02.07.2019, 07:02) *
Подготовка к запуску Тени Чернобыля.

Надеюсь баллистика будет нормальной, т.е. из ТЧ мультиплейерный вариант.
Xottab_DUTY
NanoBot-AMK, по крайней мере, на первое время, точно будет ЗПшной, а там посмотрим, делать ли для ТЧ ТЧшную баллистику. Точно могу сказать только одно: мультиплеерная баллистика – мультиплееру, сингловая – синглу.
NanoBot-AMK
Баллистика из ЧН, ЗП полная хрень, пуля летит как кусок говна, т.е резины. У меня полное впечатление что в ЧН, ЗП стреляют из травматов. Короче, чтобы НПСы лучше попадали, лучше вернуть во все игры, баллистику из ТЧ мультиплейерный вариант. Ну чтобы можно было конфигом её включить. У меня например, так включается, в XRayExt и исходниках. Т.е. код С++, рабочий для ТЧ могу предоставить, для ЗП надо адаптировать, короче, какую хочешь, такую и включаешь. cool.gif
mortan
Xottab_DUTY, включай то что просят, или дай хотя бы выбирать тот вариант который нравится больше) Еще бы и поведение НПС сделать бы возможным как в ТЧ для ЗП, будет вообще конфетка. В ЗП неписи какие-то неживые почти... Ну и мутанты при виде игрока бросают все дела и бегут на него, даже если охотились друг на друга, в тч точно такого не было...
SkyLoader
Прекрасно помню, как в ТЧ зомби бросали все и шли на гг, даже если рядом есть другие враги. Всё наверняка завязано только лишь на отношениях между монстрами и актором, а это конфиги. И раз конфиги ТЧшные, то многие подобные вещи будут работать как в ТЧ сразу же.
cjayho
QUOTE (SkyLoader @ 09.07.2019, 16:38) *
Прекрасно помню, как в ТЧ зомби бросали все и шли на гг, даже если рядом есть другие враги. Всё наверняка завязано только лишь на отношениях между монстрами и актором, а это конфиги. И раз конфиги ТЧшные, то многие подобные вещи будут работать как в ТЧ сразу же.


И не только зомби. Все зверье считало ГГ своим злейшим врагом, в отличие от кого угодно, которого считало врагом средним.
Но это просто костыль, чтобы хоть как-то замаскировать просто сказочную тупость ИИ.
В этом легко убедиться если поставить ГГ и неписей в равные условия - один (!) тушкан может перемочить гулаг из десятка сталкеров-мастеров.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.