Risen Mesh (._xmsh)

Beim Erstellen von statischen Meshes für Risen ist es wichtig, dass sämtliche verwendeten Materialnamen einem Risen-Material entsprechen, also nach einer ._xmat-Datei benannt sind. Die in der 3D-Datei verwendeten Texturen haben hingegen keinerlei Einfluss auf das Aussehen im Spiel, da die Engine die benötigten Texturen direkt in den ._xmat-Dateien nachsieht.

Damit veränderte ._xmsh-Modelle in Risen korrekt dargestellt werden, müssen sie in die compiled_meshes.bin eingetragen werden. Dazu entpackt man mittels Risenaut die compiled_meshes.bin aus dem Archiv meshes.pak nach Risen\data\common\meshes und entfernt den Schreibschutz (wichtig!). Anschließend startet man Risen und führt dort den Konsolenbefehl Editor UpdateCompiledResourceFile Mesh 1 aus. Dazu muss Script_Extensions installiert sein und die mountlist_packed.ini korrekt konfiguriert sein (mehr Informationen dazu im Modding-Forum der WorldOfRisen). Jedes Mal, wenn ein Mesh geändert wurde, muss dieser Konsolenbefehl erneut ausgeführt werden.

Für Levelmeshes spielen außerdem die Vertex Colors eine große Rolle: Der Alpha-Wert eines Vertex legt fest, wie stark das Modell an dieser Stelle das (Sonnen-)Licht reflektiert. Die RGB-Werte eines Vertex können dazu genutzt werden, zwischen verschiedenen Materialien zu überblenden um beispielsweise für einen sanften Übergang zwischen einer Gras- und einer Felsentextur zu sorgen. Dazu müssen an der betreffenden Stelle zwei (oder mehr) Polygone mit exakt (!) identischer Größe und Position aber mit verschiedenen Materialien übereinander liegen. Die Engine behandelt dasjenige Polygon, dessen Material die geringste RenderPriority aufweist, als das unterste. Das mit der zweitniedrigsten RenderPriority ist das zweitunterste und so weiter. Nun färbt man über die Vertex Colors jedes Polygon weiß an den Stellen, an denen es sichtbar sein soll und schwarz an den Stellen, an denen es unsichtbar sein soll, so dass man im Spiel das darunter liegende Material sieht. Das unterste Polygon sollte also überall weiß sein.

Der beste Weg um die Funktionsweise solcher Texturübergänge zu verstehen und somit selbst anwenden zu können, ist es, sich einige der originalen Landschaftsmeshes im bevorzugten 3D-Editor anzusehen und dabei besonders auf die Werte der Vertex Colors zu achten. Die RenderPriority eines Materials kann man nachsehen, indem man es im Genome Material-Editor öffnet. Am Ende dieses Artikels steht außerdem eine Liste, die jedem Material zwei Zahlen zuordnet. Die erste Zahl entspricht der RenderPriority und die zweite Zahl beschreibt das durchschnittliche Größenverhältnis zwischen den UV-Koordinaten und der Geometrie in den originalen Levelmeshes. Das dient als Anhaltspunkt dafür, wie stark man je nach Material die UV-Koordinaten skalieren sollte.

Über das .3db-Dateiformat können sowohl in GMax und 3ds Max als auch in Blender Vertex Colors im- und exportiert werden. In Blender verwendet man dazu zwei separate Vertex Color-Attribute mit den Namen 'rgb' und 'alpha'.

0000/00670 Arch_Bordellcloth_02_Diffuse_01
0000/00505 Arch_Bridge_Wood_01_Diffuse_01
0000/00322 arch_brushwood_01_diffuse_01
0000/00523 Arch_Comp_Housestuff_01_Diffuse_01
0000/00517 Arch_Comp_Housestuff_02_Diffuse_01
0000/00386 Arch_Comp_Housestuff_03_Diffuse_01
0000/01052 Arch_Comp_Shipstuff_01_Diffuse_01
0000/00585 Arch_Fabrics_Linen_Red_01_Diffuse_01
0000/00083 Arch_Fabrics_Net_01_Diffuse_01
0200/01192 Arch_Floor_01_Diffuse_01
0000/00500 Arch_Floor_02_Diffuse_01
0050/00599 Arch_Floor_Cobblestone_03_Diffuse_01
0000/00450 Arch_Floor_Cobblestone_04_Diffuse_01
0250/00456 Arch_Floor_Cobblestone_07_Diffuse_01
0000/00424 Arch_House_Floor_04_Diffuse_01
0000/00973 Arch_House_Wall_01_Diffuse_01
0000/00448 Arch_House_Wall_02_Diffuse_01
0000/00358 Arch_House_Wood_Planks_01_Diffuse_01
0000/00768 Arch_Leatherpatchwork_01_Diffuse_01
0000/00344 Arch_Metal_Gold_01_Diffuse_01
0000/00098 Arch_Metal_Green_01_Diffuse_01
0000/00395 Arch_Metal_Rust_01_Diffuse_01
0000/00659 Arch_Obj_MixSet_01_Diffuse_01
0000/03535 Arch_Obj_MixSet_02_Diffuse_01
0000/00209 Arch_Obj_TavernSign_01_Diffuse_01
0000/01122 Arch_Obj_Undeadaltar_01_Diffuse_01
0000/00862 Arch_Obj_Undeadwalls_01_Diffuse_01
0000/00457 Arch_Roof_Inside_01_Diffuse_01
0000/00819 Arch_Roof_Straw_01_Diffuse_01
0000/00080 Arch_Rope_01_Diffuse_01
0000/00415 Arch_Stairs_01_Diffuse_01
0000/00621 Arch_Stonefloor_01_Diffuse_01
0000/00714 Arch_Stone_Bricks_01_Diffuse_01
0000/01038 Arch_Stone_Bricks_04_Diffuse_01
0000/00884 Arch_Stone_Bricks_05_Diffuse_01
0090/01269 Arch_Stone_Bricks_06_Diffuse_01
0000/01427 Arch_Stone_Bricks_08_Diffuse_01
0000/01069 Arch_Stone_Broken_01_Diffuse_01
0000/00465 Arch_Stone_Sandstonearch_01_Diffuse_01
0000/00531 Arch_Stone_Sandstone_03_Diffuse_01
0050/00716 Arch_Stone_Sandstone_05_Diffuse_01
0000/00428 Arch_Stone_Sidebricks_02_Diffuse_01
0000/00282 Arch_Stone_Sidebricks_03_Diffuse_01
0000/00443 Arch_Stone_Sidebricks_04_Diffuse_01
0000/00803 Arch_Stone_Stairs_01_Diffuse_01
0000/04113 Arch_Stone_Titan_01_Diffuse_01
0000/00455 arch_swamphut_roof_01_diffuse_01
0000/00336 Arch_Temple_Goldpile_01_Diffuse_01
0000/00524 Arch_Temple_Goldpile_01_Diffuse_02
0000/00954 Arch_Temple_Stone_01_Diffuse_01
0000/01168 Arch_Temple_Stone_02_Diffuse_01
0000/00380 Arch_Temple_Stone_03_Diffuse_01
0000/00405 Arch_Temple_Stone_03_Diffuse_02
0000/00595 Arch_Temple_Stone_04_Diffuse_01
0000/02947 Arch_Temple_Stone_05_Diffuse_01
0000/04864 Arch_Temple_Stone_06_Diffuse_01
0000/01764 Arch_Temple_Stone_Ground_01_Diffuse_01
0000/01624 Arch_Temple_Stone_Ground_01_Diffuse_02
0000/01397 Arch_Temple_Stone_LargeBrick_01_Diffuse_01
0000/00823 Arch_Temple_Stone_Rubble_01_Diffuse_01
0000/00377 arch_temple_stone_stair_01_diffuse_01
0000/01805 Arch_Temple_Stone_Wall_01_Diffuse_01
0000/01298 Arch_Temple_Stone_Wall_01_Diffuse_02
0000/00902 Arch_Temple_Stone_Wall_02_Diffuse_01
0000/00624 Arch_Temple_Throne_01_Diffuse_01
0000/00809 Arch_TitanMetal_01_Diffuse_01
0000/01976 Arch_TitanMetal_02_Diffuse_01
0000/00494 Arch_TitanMetal_03_Diffuse_01
0000/01837 Arch_TitanMetal_04_Diffuse_01
0000/00477 Arch_Wood_06_Diffuse_01
0000/00345 arch_wood_deluxered_01_diffuse_01
0000/00435 Arch_Wood_Plain_01_Diffuse_01
0000/00871 Arch_Wood_Planks_01_Diffuse_01
0000/00425 Arch_Wood_Planks_02_Diffuse_01
0000/00408 Arch_Wood_Planks_03_Diffuse_01
0000/00076 Arch_Wood_Rings_01_Diffuse_01
0000/00612 Dungeon_Stone_Floor_01_Diffuse_01
0000/00638 Dungeon_Stone_Wall_02_Diffuse_01
0000/00645 Dungeon_Stone_Wall_03_Diffuse_01
0000/01066 Monastery_Ground_Gravel_01_Diffuse_01
0000/00322 Monastery_Stone_Floor_01_Diffuse_01
0000/01235 Monastery_Stone_Fresco_01_Diffuse_01
0000/00392 Monastery_Stone_Roof_01_Diffuse_01
0000/00609 Monastery_Stone_Wall_01_Diffuse_01
0000/00674 Monastery_Stone_Wall_Aps_01_Diffuse_01
0000/00673 Monastery_Stone_Wall_Aps_02_Diffuse_01
0000/00679 Nat_Bark_Dead_01_Diffuse_01
0180/01210 Nat_Ground_Beach_01_Diffuse_01
0500/01216 Nat_Ground_Beach_01_Diffuse_01_Specular
0000/00331 Nat_Ground_Bones_01_Diffuse_01
0300/01219 Nat_Ground_CaveFloor_01_Diffuse_01
0280/01217 Nat_Ground_CobbledPath_01_Diffuse_01
0260/01192 Nat_Ground_Field_01_Diffuse_01
0140/01211 Nat_Ground_Forest_01_Diffuse_01
0130/01211 Nat_Ground_Forrest_Clearing_01_Diffuse_01
0030/01215 Nat_Ground_Grass_03_Diffuse_01
0050/01214 nat_ground_grass_03_diffuse_03
0160/01215 Nat_Ground_Gravel_01_Diffuse_01
0155/01213 Nat_Ground_Gravel_02_Diffuse_01
0150/01222 Nat_Ground_Gravel_03_Diffuse_01
0000/00763 Nat_Ground_Gravel_04_Diffuse_01
0000/00985 Nat_Ground_Gravel_05_Diffuse_01
0120/01207 Nat_Ground_GreenMud_01_Diffuse_01
0100/01220 Nat_Ground_GreenMud_02_Diffuse_01
0150/00331 Nat_Ground_Moss_01_Diffuse_01
0240/01219 Nat_Ground_Path_02_Diffuse_01
0000/00367 Nat_Ground_Rift_01_Diffuse_01
0250/01241 Nat_Ground_River_01_Diffuse_02
0220/01226 Nat_Ground_Soil_01_Diffuse_01
0000/01683 Nat_Lava_01_Diffuse_01
0000/02753 Nat_Lava_01_Diffuse_01_flow
0000/00191 Nat_Obj_Crystal_01_Diffuse_01
0000/00191 Nat_Obj_Crystal_01_Diffuse_02
0080/01221 Nat_Sea_Bottom_01_Diffuse_01
0060/01229 Nat_Sea_Bottom_02_Diffuse_01
0305/03266 Nat_Stone_Lava_01_Diffuse_01
0303/03327 Nat_Stone_Lava_02_Diffuse_01
0350/04197 Nat_Stone_Rock_01_Diffuse_01
0500/04141 Nat_Stone_Rock_01_Diffuse_01_Specular
0350/04210 Nat_Stone_Rock_01_Diffuse_01_Vulcan
0000/01510 Nat_Stone_Rock_01_Diffuse_03
0350/00823 nat_stone_rock_01_diffuse_04
0000/02143 Nat_Stone_Rock_01_Diffuse_05
0340/01931 nat_stone_rock_01_diffuse_06
0320/00322 Nat_Stone_Rock_01_Diffuse_07
0000/01153 Nat_Stone_Rock_04_Diffuse_01
0000/00061 Nat_Tree_Rings_01_Diffuse_01
0000/01851 Nat_Veg_Herbs_02_Diffuse_01
0000/00295 Nat_Wood_01_Diffuse_01
0000/00547 nat_wood_bark_01_diffuse_01
2000/30524 Special_Fog_Ground_02
1000/01344 Special_Water_Caustics_01_Diffuse_01
0000/00675 Special_Water_Falls_01_Diffuse_01
0000/00000 Special_Water_Island_01_Diffuse_01
0000/00459 Special_Water_River_01_Diffuse_01
0000/00177 Static_Bark_01_Diffuse_01