Canis Canning
Aktiver Nutzer
Danke für das Verschieben des Threads!
Zuletzt bearbeitet:
Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Ich dachte wir haetten diesen Mythos "Lag durch Meshes" endgültig aus der Welt geschafft.
Aber sowas scheint sich ja wirklich bis in alle ewigkeit zu halten.
Naja .. ich gebs auf dagegen anzureden.
Ich dachte wir haetten diesen Mythos "Lag durch Meshes" endgültig aus der Welt geschafft.
Aber sowas scheint sich ja wirklich bis in alle ewigkeit zu halten.
Naja .. ich gebs auf dagegen anzureden.
"Normale" Meshes machen weniger Probleme als Sculpties. Weil sie oft sogar weniger Dreiecke haben. Das stimmt. Aber Meshes können durchaus massive Probleme machen, wo das mit normalen Prims & Sculpts eben nicht geht:
Wenn das Mesh File (z.B. wegen vielen zu großen Texturen in der Datei) eben zu groß ist (man kann bis 8MB dae Files hochladen AFAIK), dann dauert es manchmal eben ziemlich lange, bis es runtergeladen ist, vor allem, wenn da noch viele andere Meshes geladen werden müssen. Schafft es der Viewer dann in 30s nicht diese Riesen-Datei zu laden, dann wird der Download mit einem timeout hart abgebrochen. Und nach eine kurzen Wartezeit lädt der Viewer die Datei noch mal komplett ganz von vorn. Schafft es der Viewer auch diesmal nicht in 30s, dann wird das wieder angebrochen - und wieder ganz von vorn geladen usw. Bis es nach vielen versuchen ganz abgebrochen wird oder irgendwann doch in den 30s geladen ist. Ein Mesh-Objekt, das aus 5 gelinkten Objekten mit z.B. je 1MB Downloadgröße besteht ist eben normalerweise so um Welten schneller geladen als ein einzeler 5MB-Download. Obwohl 5 Downloads mehr Overhead haben. Mit vielen zu großen Mesh-Dateien kann man also schon mal den Download selbst eines schnellen Anschlusses dicht machen - denn auch die Bandbreite von SL zum Viewer ist leider begrenzt. Bei Leuten mit kleiner Bandbreite reichen aber schon ein oder 2 Riesen-Dateien um den Download erst mal dicht zu machen, so dass ein Sim eben wirklich ewig braucht um zu laden.
Das andere große Problem sind Meshes mit zu vielen Dreiecken. Viele Mesh-Objekte, die sich in SL tummeln sind überhaupt nicht für SL oder Spiele gemacht, sondern zum Rendern von Filmen oder 3D-Szenen, und diese Objekte haben dann gern mal viel zu viele Dreiecke. Grafikkarten können aber nur eine bestimmte Anzahl von Dreiecken pro Sekunde verarbeiten. Es gibt in SL durchaus einzelne Gebäude, die z.B. für eine einfache Säule eben mal tausende von Dreiecken verbraten, weil da vermutlich irgendwo einfach eine Säule aus dem Internet nach SL importiert wurde. Und noch schlimmer sind Klamotten. Da gibts teilweise Shirts und Hosen, die mehr Dreiecke haben als eine normale Sim mit 15000 Prims. So dass man eben dann, wenn man den damit angezogenen Ava im Sichtfeld hat, eben mal einen Einbruch der FPS um 50% und mehr hat - nur durch diese schlechten Mesh-Objekte.
Das sind beides Bereiche, in denen eben normale Prims und auch Sculpts völlig unproblematisch sind. Aber zu große/nicht für SL geeignete Meshes machen hier oft wirklich Probleme mittlerweile. Die Leute gehen einfach auf irgendwelche Mesh-Repos, laden sich die Dateien als Collada runter und schieben das Ding dann unverändert nach SL, egal ob das Model für Computerspiele, für Animationsfilme oder für 3D-Szenen gemacht wurde. Und weils sie nicht wirklich Ahnung haben und weil es dann von weitem Besser aussieht, da zahlen sie eben bisschen mehr und laden für alle LOD eben hochauflösende Model hoch.
Das ist nicht anders als mit den Leuten, die prinzipiell nur 512er und 1024er Texturen für ihren Kram verwenden "weil das die beste Qualität ist" - egal wie viele Pixel von der Textur man nachher effektiv sieht.
Ok .. die ausführungen sind soweit richtig, was haben denn nun, und das ist die essenzfrage, Ladezeiten mit LAG zu tun ?
Und? Die frage bleibt, was hat das mit LAG zu tun?
(...)
Ich verwehre mich halt dagegen, das in solchen Artikeln so expliziet auf den Bösewicht Mesh verwiesen wird, das stinkt nach "Nimm das blos nich, das macht ja LAG" obwohl das purer unsinn ist.
aber ich stelle mir das so ähnlich vor wie wenn du auf eine Sim kommst mit einem Ort oder Wald, wo zig tausend einzelne Flächen mit jeweils unterschiedlichen Texturen sind,
<?xml version="1.0" encoding="utf-8"?>
<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.0">
<asset>
<contributor>
<author></author>
<authoring_tool>Mesh Studio</authoring_tool>
<comments></comments>
</contributor>
<created>2013-03-25T14:41:06Z</created>
<modified>2013-03-25T14:41:06Z</modified>
<revision></revision>
<title></title>
<unit meter="1.000000"/>
<up_axis>Y_UP</up_axis>
</asset>
<library_images>
<image id="file2" name="file2">
<init_from>default.jpg</init_from>
</image>
</library_images>
<library_materials>
<material id="blinn3" name="blinn3">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m1" name="blinn3m1">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m2" name="blinn3m2">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m3" name="blinn3m3">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m4" name="blinn3m4">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m5" name="blinn3m5">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m6" name="blinn3m6">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m7" name="blinn3m7">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m8" name="blinn3m8">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m9" name="blinn3m9">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m10" name="blinn3m10">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m11" name="blinn3m11">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m12" name="blinn3m12">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m13" name="blinn3m13">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m14" name="blinn3m14">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m15" name="blinn3m15">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m16" name="blinn3m16">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m17" name="blinn3m17">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m18" name="blinn3m18">
<instance_effect url="#blinn3-fx"/>
</material>
<material id="blinn3m19" name="blinn3m19">
<instance_effect url="#blinn3-fx"/>
</material>
</library_materials>
<library_effects>
<effect id="blinn3-fx">
<profile_COMMON>
<newparam sid="file2-surface">
<surface type="2D">
<init_from>file2</init_from>
<format>A8R8G8B8</format>
</surface>
</newparam>
<newparam sid="file2-sampler">
<sampler2D>
<source>file2-surface</source>
<minfilter>LINEAR_MIPMAP_LINEAR</minfilter>
<magfilter>LINEAR</magfilter>
</sampler2D>
</newparam>
<technique sid="common">
<blinn>
<emission>
<color>0 0 0 1 </color>
</emission>
<ambient>
<color>0 0 0 1 </color>
</ambient>
<diffuse>
<texture texture="file2-sampler" texcoord="UVSET0"/>
</diffuse>
<specular>
<color>0 0 0 1 </color>
</specular>
<shininess>
<float>0.3</float>
</shininess>
<reflective>
<color>0 0 0 1 </color>
</reflective>
<reflectivity>
<float>0.5</float>
</reflectivity>
<transparent>
<color>0 0 0 1 </color>
</transparent>
<transparency>
<float>0</float>
</transparency>
<index_of_refraction>
<float>0</float>
</index_of_refraction>
</blinn>
</technique>
</profile_COMMON>
</effect>
</library_effects>
<library_geometries>
<geometry id="o2jm1lib" name="o2jm1Mesh">
<mesh>
<source id="o2jm1libPos" name="position">
<float_array id="o2jm1libPosa" count="24">-0.265000 -0.125000 0.265000 0.265000 0.125000 0.265000 -0.265000 0.125000 0.265000 0.265000 -0.125000 0.265000 -0.265000 -0.125000 -0.265000 0.265000 -0.125000 -0.265000 0.265000 0.125000 -0.265000 -0.265000 0.125000 -0.265000 </float_array>
<technique_common>
<accessor source="#o2jm1libPosa" count="8" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<source id="o2jm1libUV0" name="map1">
<float_array id="o2jm1libUV0a" count="72">0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 0.000000 0.000000 1.000000 1.000000 0.000000 1.000000 0.000000 0.000000 1.000000 0.000000 1.000000 1.000000 0.000000 0.000000 0.000000 -1.000000 1.000000 -1.000000 0.000000 0.000000 1.000000 -1.000000 1.000000 0.000000 </float_array>
<technique_common>
<accessor source="#o2jm1libUV0a" count="36" stride="2">
<param name="S" type="float"/>
<param name="T" type="float"/>
</accessor>
</technique_common>
</source>
<source id="o2jm1libNorm" name="normal">
<float_array id="o2jm1libNorma" count="18">0.000000 0.000000 1.000000 0.000000 -1.000000 0.000000 1.000000 0.000000 0.000000 0.000000 1.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 -1.000000 </float_array>
<technique_common>
<accessor source="#o2jm1libNorma" count="6" stride="3">
<param name="X" type="float"/>
<param name="Y" type="float"/>
<param name="Z" type="float"/>
</accessor>
</technique_common>
</source>
<vertices id="o2jm1libVert">
<input semantic="POSITION" source="#o2jm1libPos"/>
</vertices>
<triangles count="12" material="blinn3o2jm1m1">
<input semantic="VERTEX" offset="0" source="#o2jm1libVert"/>
<input semantic="NORMAL" offset="1" source="#o2jm1libNorm"/>
<input semantic="TEXCOORD" offset="2" source="#o2jm1libUV0"/>
<p>0 0 0 1 0 1 2 0 2 0 0 3 3 0 4 1 0 5 4 1 6 3 1 7 0 1 8 4 1 9 5 1 10 3 1 11 5 2 12 1 2 13 3 2 14 5 2 15 6 2 16 1 2 17 6 3 18 2 3 19 1 3 20 6 3 21 7 3 22 2 3 23 7 4 24 0 4 25 2 4 26 7 4 27 4 4 28 0 4 29 4 5 30 7 5 31 6 5 32 4 5 33 6 5 34 5 5 35 </p>
</triangles>
</mesh>
</geometry>
</library_geometries>
<library_visual_scenes>
<visual_scene id="Scene" name="Scene">
<node id="Root" name="Root">
<matrix sid="matrix">1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000 0.000000 0.000000 -1.000000 0.000000 0.000000 0.000000 0.000000 0.000000 1.000000</matrix>
<instance_geometry url="#o2jm1lib">
<bind_material>
<technique_common>
<instance_material symbol="blinn3o2jm1m1" target="#blinn3m1">
<bind_vertex_input semantic="UVSET0" input_semantic="TEXCOORD" input_set="0"/>
</instance_material>
</technique_common>
</bind_material>
</instance_geometry>
</node>
</visual_scene>
</library_visual_scenes>
<scene>
<instance_visual_scene url="#Scene"/>
</scene>
</COLLADA>