Level schneller laden
Übersicht
BlitzBasic
Allgemein|
|
MCWulfBetreff: Level schneller laden |
Antworten mit Zitat |
|---|---|---|
|
Hallo!
Ich und mein Freund proggen derzeit an einem kleinen 3D-Spiel, bei dem eine Art Tile-Map aus einer Text-Datei gelesen und in Meshes umgesetzt wird.. Doch das dauert mir bei einer 100x100 felder großen Map viieeel zu lange... Wie könnte man den folgenden Code verbessern/beschleunigen? Ich danke euch schonmal vielmals!! Code: [AUSKLAPPEN] For i = 1 To MapWidth
For i2 = 1 To MapHeight Select SpielfeldData$(i,i2) Case "1", "5" l$ =SpielfeldData$(i-1,i2):lo$=SpielfeldData$(i-1,i2-1) o$ =SpielfeldData$(i,i2-1):ro$=SpielfeldData$(i+1,i2-1) r$ =SpielfeldData$(i+1,i2):ru$=SpielfeldData$(i+1,i2+1) u$ =SpielfeldData$(i,i2+1):lu$=SpielfeldData$(i-1,i2+1) If l ="1" Or l ="5" Then l ="a" Else l ="s" If lo="1" Or lo="5" Then lo="a" Else lo="s" If o ="1" Or o ="5" Then o ="a" Else o ="s" If ro="1" Or ro="5" Then ro="a" Else ro="s" If r ="1" Or r ="5" Then r ="a" Else r ="s" If ru="1" Or ru="5" Then ru="a" Else ru="s" If u ="1" Or u ="5" Then u ="a" Else u ="s" If lu="1" Or lu="5" Then lu="a" Else lu="s" str1$=l+lo+o: str2$=o+ro+r: str3$=r+ru+u: str4$=u+lu+l pfad1$="": pfad2$="": pfad3$="": pfad4$="" com1$="aaa": com2$="aas": com3$="asa": com4$="saa" com5$="ass": com6$="sas": com7$="ssa": com8$="sss" drehung1=0: drehung2=0: drehung3=0: drehung4=0 x1#=0: x2#=0: x3#=0: x4#=0 y1#=0: y2#=0: y3#=0: y4#=0 If str1=com1 Then pfad1="gel2.3ds" If str2=com1 Then pfad2="gel2.3ds" If str3=com1 Then pfad3="gel2.3ds" If str4=com1 Then pfad4="gel2.3ds" If str1=com2 Then pfad1="gel3.3ds" :drehung1=90 : x1=-0.5 If str2=com2 Then pfad2="gel3.3ds" :drehung2=90 : y2=-0.5 If str3=com2 Then pfad3="gel3.3ds" :drehung3=90 : x3=0.5 If str4=com2 Then pfad4="gel3.3ds" :drehung4=90 : y4=0.5 If str1=com3 Then pfad1="gel4.3ds" If str2=com3 Then pfad2="gel4.3ds" If str3=com3 Then pfad3="gel4.3ds" If str4=com3 Then pfad4="gel4.3ds" If str1=com4 Then pfad1="gel5.3ds" :drehung1=-90 : y1=-0.5 If str2=com4 Then pfad2="gel5.3ds" :drehung2=-90 : x2=0.5 If str3=com4 Then pfad3="gel5.3ds" :drehung3=-90 : y3=0.5 If str4=com4 Then pfad4="gel5.3ds" :drehung4=-90 : x4=-0.5 If str1=com5 Then pfad1="gel6.3ds" :drehung1=90 : x1=-0.5 If str2=com5 Then pfad2="gel6.3ds" :drehung2=90 : y2=-0.5 If str3=com5 Then pfad3="gel6.3ds" :drehung3=90 : x3=0.5 If str4=com5 Then pfad4="gel6.3ds" :drehung4=90 : y4=0.5 If str1=com6 Then pfad1="gel7.3ds" If str2=com6 Then pfad2="gel7.3ds" If str3=com6 Then pfad3="gel7.3ds" If str4=com6 Then pfad4="gel7.3ds" If str1=com7 Then pfad1="gel8.3ds" :drehung1=-90 : y1=-0.5 If str2=com7 Then pfad2="gel8.3ds" :drehung2=-90 : x2=0.5 If str3=com7 Then pfad3="gel8.3ds" :drehung3=-90 : y3=0.5 If str4=com7 Then pfad4="gel8.3ds" :drehung4=-90 : x4=-0.5 If str1=com8 Then pfad1="gel9.3ds" If str2=com8 Then pfad2="gel9.3ds" If str3=com8 Then pfad3="gel9.3ds" If str4=com8 Then pfad4="gel9.3ds" Untergrund1(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad1) Untergrund2(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad2) Untergrund3(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad3) Untergrund4(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad4) EntityTexture Untergrund1(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund1(((i-1)*mapwidth)+i2), (i+x1)*10,0,(i2+y1)*10 RotateEntity Untergrund1(((i-1)*mapwidth)+i2), 0,drehung1+90,0 EntityTexture Untergrund2(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund2(((i-1)*mapwidth)+i2), (i+x2)*10,0,(i2+y2)*10 RotateEntity Untergrund2(((i-1)*mapwidth)+i2), 0,drehung2+180,0 EntityTexture Untergrund3(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund3(((i-1)*mapwidth)+i2), (i+x3)*10,0,(i2+y3)*10 RotateEntity Untergrund3(((i-1)*mapwidth)+i2), 0,drehung3+270,0 EntityTexture Untergrund4(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund4(((i-1)*mapwidth)+i2), (i+x4)*10,0,(i2+y4)*10 RotateEntity Untergrund4(((i-1)*mapwidth)+i2), 0,drehung4,0 Default Untergrund(((i-1)*mapwidth)+i2) = LoadMesh("Objects\Ground1.x") EntityTexture Untergrund(((i-1)*mapwidth)+i2), Textur(1) PositionEntity Untergrund(((i-1)*mapwidth)+i2),i*10,0,i2*10 EntityPickMode Untergrund(((i-1)*mapwidth)+i2),2 End Select Next Next |
||
|
|
Mr.Keks |
Antworten mit Zitat |
|---|---|---|
|
omg ^^.
mein vorschlag: schau dir mal copymesh, types und arrays (dim) an! damit würde sich das laden erheblich beschleunigen lassen und übersichtlicher werden. abgesehen davon ist es eher unklug, 10 000 entities zu erstellen! lies dir die surfacebefehle auf blitzbase.de durch! |
||
| MrKeks.net | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
|
mit copymesh hab ichs schonmal versucht, aber hat nix gebracht Danke für die Tipps aber trotzdem, werd ich mir gleich mal durchlesen! |
||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
|
so, hab jetzt alles versucht, aber es will einfach nicht schneller werden |
||
Dreamora |
Antworten mit Zitat |
|
|---|---|---|
|
Was verstehst du genau unter viel zu lange?
Je nach system kann das durchaus 30-60s gehen und das is eigentlich auch normal in anbetracht der menge die du da versuchst ins system zu stampfen |
||
| Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
| Schon, aber solange ist eben zu lange für ein spiel imo... könnte ich denn dann das level anders laden? damits schneller geht? | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
|
also gut, habs jetzt geschafft ne 100x100 große map auf 17 sekunden zu reduzieren, ist noch mehr drinnen?
(Edit: da ist jetzt noch unnötiges zeugs drinnen, wo ich zu faul war es rauszulöschen..) Code: [AUSKLAPPEN] For i = 1 To MapWidth
For i2 = 1 To MapHeight Select SpielfeldData$(i,i2) Case "1" ;Gelände formen map(i,i2)\typ=1 l$ =SpielfeldData$(i-1,i2):lo$=SpielfeldData$(i-1,i2-1) o$ =SpielfeldData$(i,i2-1):ro$=SpielfeldData$(i+1,i2-1) r$ =SpielfeldData$(i+1,i2):ru$=SpielfeldData$(i+1,i2+1) u$ =SpielfeldData$(i,i2+1):lu$=SpielfeldData$(i-1,i2+1) If l ="1" Or l ="5" Then l ="a" Else l ="s" If lo="1" Or lo="5" Then lo="a" Else lo="s" If o ="1" Or o ="5" Then o ="a" Else o ="s" If ro="1" Or ro="5" Then ro="a" Else ro="s" If r ="1" Or r ="5" Then r ="a" Else r ="s" If ru="1" Or ru="5" Then ru="a" Else ru="s" If u ="1" Or u ="5" Then u ="a" Else u ="s" If lu="1" Or lu="5" Then lu="a" Else lu="s" str1$=l+lo+o: str2$=o+ro+r: str3$=r+ru+u: str4$=u+lu+l pfad1$="": pfad2$="": pfad3$="": pfad4$="" drehung1=0: drehung2=0: drehung3=0: drehung4=0 x1#=0: x2#=0: x3#=0: x4#=0 y1#=0: y2#=0: y3#=0: y4#=0 If str1=com1 Then pfad1="gel2.3ds" :Goto bitterestnext If str1=com2 Then pfad1="gel3.3ds" :drehung1=90 : x1=-0.5 :Goto bitterestnext If str1=com3 Then pfad1="gel4.3ds" :Goto bitterestnext If str1=com4 Then pfad1="gel5.3ds" :drehung1=-90 : y1=-0.5 :Goto bitterestnext If str1=com5 Then pfad1="gel6.3ds" :drehung1=90 : x1=-0.5 :Goto bitterestnext If str1=com6 Then pfad1="gel7.3ds" :Goto bitterestnext If str1=com7 Then pfad1="gel8.3ds" :drehung1=-90 : y1=-0.5 :Goto bitterestnext If str1=com8 Then pfad1="gel9.3ds" .bitterestnext If str2=com1 Then pfad2="gel2.3ds" :Goto bitttrestnext If str2=com2 Then pfad2="gel3.3ds" :drehung2=90 : y2=-0.5 :Goto bitttrestnext If str2=com3 Then pfad2="gel4.3ds" :Goto bitttrestnext If str2=com4 Then pfad2="gel5.3ds" :drehung2=-90 : x2=0.5 :Goto bitttrestnext If str2=com5 Then pfad2="gel6.3ds" :drehung2=90 : y2=-0.5 :Goto bitttrestnext If str2=com6 Then pfad2="gel7.3ds" :Goto bitttrestnext If str2=com7 Then pfad2="gel8.3ds" :drehung2=-90 : x2=0.5 :Goto bitttrestnext If str2=com8 Then pfad2="gel9.3ds" .bitttrestnext If str3=com1 Then pfad3="gel2.3ds" :Goto bittetestnext If str3=com2 Then pfad3="gel3.3ds" :drehung3=90 : x3=0.5 :Goto bittetestnext If str3=com3 Then pfad3="gel4.3ds" :Goto bittetestnext If str3=com4 Then pfad3="gel5.3ds" :drehung3=-90 : y3=0.5 :Goto bittetestnext If str3=com5 Then pfad3="gel6.3ds" :drehung3=90 : x3=0.5 :Goto bittetestnext If str3=com6 Then pfad3="gel7.3ds" :Goto bittetestnext If str3=com7 Then pfad3="gel8.3ds" :drehung3=-90 : y3=0.5 :Goto bittetestnext If str3=com8 Then pfad3="gel9.3ds" .bittetestnext If str4=com1 Then pfad4="gel2.3ds" :Goto bittertstnext If str4=com2 Then pfad4="gel3.3ds" :drehung4=90 : y4=0.5 :Goto bittertstnext If str4=com3 Then pfad4="gel4.3ds" :Goto bittertstnext If str4=com4 Then pfad4="gel5.3ds" :drehung4=-90 : x4=-0.5 :Goto bittertstnext If str4=com5 Then pfad4="gel6.3ds" :drehung4=90 : y4=0.5 :Goto bittertstnext If str4=com6 Then pfad4="gel7.3ds" :Goto bittertstnext If str4=com7 Then pfad4="gel8.3ds" :drehung4=-90 : x4=-0.5 :Goto bittertstnext If str4=com8 Then pfad4="gel9.3ds" .bittertstnext Untergrund1(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad1) Untergrund2(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad2) Untergrund3(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad3) Untergrund4(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad4) EntityTexture Untergrund1(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund1(((i-1)*mapwidth)+i2), (i+x1)*fieldwidth,0,(i2+y1)*fieldheight RotateEntity Untergrund1(((i-1)*mapwidth)+i2), 0,drehung1+90,0 EntityTexture Untergrund2(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund2(((i-1)*mapwidth)+i2), (i+x2)*fieldwidth,0,(i2+y2)*fieldheight RotateEntity Untergrund2(((i-1)*mapwidth)+i2), 0,drehung2+180,0 EntityTexture Untergrund3(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund3(((i-1)*mapwidth)+i2), (i+x3)*fieldwidth,0,(i2+y3)*fieldheight RotateEntity Untergrund3(((i-1)*mapwidth)+i2), 0,drehung3+270,0 EntityTexture Untergrund4(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund4(((i-1)*mapwidth)+i2), (i+x4)*fieldwidth,0,(i2+y4)*fieldheight RotateEntity Untergrund4(((i-1)*mapwidth)+i2), 0,drehung4,0 ;--------------- Case "5" ;Gelände formen map(i,i2)\typ=1 l$ =SpielfeldData$(i-1,i2):lo$=SpielfeldData$(i-1,i2-1) o$ =SpielfeldData$(i,i2-1):ro$=SpielfeldData$(i+1,i2-1) r$ =SpielfeldData$(i+1,i2):ru$=SpielfeldData$(i+1,i2+1) u$ =SpielfeldData$(i,i2+1):lu$=SpielfeldData$(i-1,i2+1) If l ="1" Or l ="5" Then l ="a" Else l ="s" If lo="1" Or lo="5" Then lo="a" Else lo="s" If o ="1" Or o ="5" Then o ="a" Else o ="s" If ro="1" Or ro="5" Then ro="a" Else ro="s" If r ="1" Or r ="5" Then r ="a" Else r ="s" If ru="1" Or ru="5" Then ru="a" Else ru="s" If u ="1" Or u ="5" Then u ="a" Else u ="s" If lu="1" Or lu="5" Then lu="a" Else lu="s" str1$=l+lo+o: str2$=o+ro+r: str3$=r+ru+u: str4$=u+lu+l pfad1$="": pfad2$="": pfad3$="": pfad4$="" drehung1=0: drehung2=0: drehung3=0: drehung4=0 x1#=0: x2#=0: x3#=0: x4#=0 y1#=0: y2#=0: y3#=0: y4#=0 If str1=com1 Then pfad1="gel2.3ds" :Goto bittttestnext If str1=com2 Then pfad1="gel3.3ds" :drehung1=90 : x1=-0.5 :Goto bittttestnext If str1=com3 Then pfad1="gel4.3ds" :Goto bittttestnext If str1=com4 Then pfad1="gel5.3ds" :drehung1=-90 : y1=-0.5 :Goto bittttestnext If str1=com5 Then pfad1="gel6.3ds" :drehung1=90 : x1=-0.5 :Goto bittttestnext If str1=com6 Then pfad1="gel7.3ds" :Goto bittttestnext If str1=com7 Then pfad1="gel8.3ds" :drehung1=-90 : y1=-0.5 :Goto bittttestnext If str1=com8 Then pfad1="gel9.3ds" .bittttestnext If str2=com1 Then pfad2="gel2.3ds" :Goto bitttttttnext If str2=com2 Then pfad2="gel3.3ds" :drehung2=90 : y2=-0.5 :Goto bitttttttnext If str2=com3 Then pfad2="gel4.3ds" :Goto bitttttttnext If str2=com4 Then pfad2="gel5.3ds" :drehung2=-90 : x2=0.5 :Goto bitttttttnext If str2=com5 Then pfad2="gel6.3ds" :drehung2=90 : y2=-0.5 :Goto bitttttttnext If str2=com6 Then pfad2="gel7.3ds" :Goto bitttttttnext If str2=com7 Then pfad2="gel8.3ds" :drehung2=-90 : x2=0.5 :Goto bitttttttnext If str2=com8 Then pfad2="gel9.3ds" .bitttttttnext If str3=com1 Then pfad3="gel2.3ds" :Goto bitttttttttnext If str3=com2 Then pfad3="gel3.3ds" :drehung3=90 : x3=0.5 :Goto bitttttttttnext If str3=com3 Then pfad3="gel4.3ds" :Goto bitttttttttnext If str3=com4 Then pfad3="gel5.3ds" :drehung3=-90 : y3=0.5 :Goto bitttttttttnext If str3=com5 Then pfad3="gel6.3ds" :drehung3=90 : x3=0.5 :Goto bitttttttttnext If str3=com6 Then pfad3="gel7.3ds" :Goto bitttttttttnext If str3=com7 Then pfad3="gel8.3ds" :drehung3=-90 : y3=0.5 :Goto bitttttttttnext If str3=com8 Then pfad3="gel9.3ds" .bitttttttttnext If str4=com1 Then pfad4="gel2.3ds" :Goto bittttttaatttnext If str4=com2 Then pfad4="gel3.3ds" :drehung4=90 : y4=0.5 :Goto bittttttaatttnext If str4=com3 Then pfad4="gel4.3ds" :Goto bittttttaatttnext If str4=com4 Then pfad4="gel5.3ds" :drehung4=-90 : x4=-0.5 :Goto bittttttaatttnext If str4=com5 Then pfad4="gel6.3ds" :drehung4=90 : y4=0.5 :Goto bittttttaatttnext If str4=com6 Then pfad4="gel7.3ds" :Goto bittttttaatttnext If str4=com7 Then pfad4="gel8.3ds" :drehung4=-90 : x4=-0.5 :Goto bittttttaatttnext If str4=com8 Then pfad4="gel9.3ds" .bittttttaatttnext Untergrund1(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad1) Untergrund2(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad2) Untergrund3(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad3) Untergrund4(((i-1)*mapwidth)+i2)=LoadMesh("Objects\RGel\"+pfad4) EntityTexture Untergrund1(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund1(((i-1)*mapwidth)+i2), (i+x1)*fieldwidth,0,(i2+y1)*fieldheight RotateEntity Untergrund1(((i-1)*mapwidth)+i2), 0,drehung1+90,0 EntityTexture Untergrund2(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund2(((i-1)*mapwidth)+i2), (i+x2)*fieldwidth,0,(i2+y2)*fieldheight RotateEntity Untergrund2(((i-1)*mapwidth)+i2), 0,drehung2+180,0 EntityTexture Untergrund3(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund3(((i-1)*mapwidth)+i2), (i+x3)*fieldwidth,0,(i2+y3)*fieldheight RotateEntity Untergrund3(((i-1)*mapwidth)+i2), 0,drehung3+270,0 EntityTexture Untergrund4(((i-1)*mapwidth)+i2), Textur(2) PositionEntity Untergrund4(((i-1)*mapwidth)+i2), (i+x4)*fieldwidth,0,(i2+y4)*fieldheight RotateEntity Untergrund4(((i-1)*mapwidth)+i2), 0,drehung4,0 ;--------------- ;AufsammlerStarts reinmachen AufsammlerStart.AufsammlerStartA = New AufsammlerStartA AufsammlerStart\X = i * fieldwidth AufsammlerStart\Y = i2 * fieldheight AufsammlerStart\Ent = CreateCube() PositionEntity AufsammlerStart\Ent,i*fieldwidth,10,i2*fieldheight ScaleEntity AufsammlerStart\Ent,5,2,5 ;--------------- Case "2" ;Beamer/Start reinmachen map(i,i2)\typ=303 Beamer.BeamerA = New BeamerA Beamer\X=i*Fieldwidth Beamer\Y=i2*Fieldheight Beamer\Ent1=LoadMesh("Objects\Tele1.x") PositionEntity Beamer\Ent1,Beamer\X,0,Beamer\Y Beamer\Ent2=LoadMesh("Objects\Tele2.x") PositionEntity Beamer\Ent2,Beamer\X,0,Beamer\Y Beamer\Ent3=LoadMesh("Objects\Tele2.x") PositionEntity Beamer\Ent3,Beamer\X,0,Beamer\Y FlipMesh Beamer\Ent3 PaintMesh Beamer\Ent2,Brush(1) PaintMesh Beamer\Ent3,Brush(1) Beamer\Ent4=CreateLight(2) LightRange Beamer\Ent4,5 LightColor Beamer\Ent4,255,10,10 PositionEntity Beamer\Ent4,Beamer\X,10,Beamer\Y ;Die 10 steht hier nur für das Licht und kann imo so bleiben ;--------------- Case "3" ;-Tor reinmachen map(i,i2)\typ=304 Tor.TorA = New TorA Tor\X=i*Fieldwidth Tor\Y=i2*Fieldheight Tor\Gesundheit=20 Tor\Ent=LoadMesh("Objects\Tor1.x") If SpielfeldData$(i-1,i2)="0" And SpielfeldData$(i+1,i2)="3" Then RotateEntity Tor\Ent,0,90,0 ElseIf SpielfeldData$(i-1,i2)="3" And SpielfeldData$(i+1,i2)="0" Then RotateEntity Tor\Ent,0,90,0 EndIf PositionEntity Tor\Ent,Tor\X,0,Tor\Y EntityPickMode Tor\Ent,2 ;--------------- Case "4" ;Gefangenen reinmachen map(i,i2)\typ=Prison Gefangener.GefangeneA = New GefangeneA Gefangener\X=i*Fieldwidth Gefangener\Y=i2*Fieldheight Gefangener\Ent=LoadMesh("Objects\Gefangener1.x") PositionEntity Gefangener\Ent,Gefangener\X,0,Gefangener\Y EntityPickMode Gefangener\Ent,2 ;--------------- End Select Next Next |
||
Dreamora |
Antworten mit Zitat |
|
|---|---|---|
|
Die Hauptbeschleunigung wäre ohne Frage den Untergrund fix als Model zu laden. Das ginge dann ruck zuck. Das ist das was aktuell am meisten Zeit verbraucht.
Und dann natürlich die Meshes vorher zu laden ... Aktuell lädst du mitten in der Loop zig hundert mal das gleiche Mesh immer wieder und wieder anstatt es nur 1x zu laden und kopieren / klonen, was definitiv schneller geht. |
||
| Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
| Das hätte ich eben auch gedacht! Also hab ichs mal ausprobiert, aber es hat seltsamerweise keine beschleunigung gebracht! | ||
Dreamora |
Antworten mit Zitat |
|
|---|---|---|
|
Dann wirst du dich, bis du das ganze als 1 Mesh lädst, wohl mit der jetzigen Ladezeit zufrieden geben müssen ...
Die Ladezeit ist ja relativ kurz ... Die einzige alternative wäre das Mesh selber mit AddVertex und AddTriangle zu erzeugen, da dadurch bedeutend weniger Objekte entstehen. Hast du eventuell schonmal mit AddMesh versucht das ganze zu optimieren? (kann da allerdings nicht sagen wieviel es bringt) |
||
| Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
|
nein, kenn den befehl nicht, aber werd ihn mir heute mal anschaun...
und in dem zuletzt geposteten code hab ich was vergessen (den boden) und da ich später noch was drauf bauen will muss ich noch pickmode dazuschreiben, d.h. alles als 1 mesh zu laden würde ja dann nicht gehn, oder sehe ich das falsch? |
||
Dreamora |
Antworten mit Zitat |
|
|---|---|---|
|
Handelt es sich dabei um quadrate?
In diesem Falle würde ich einen Datenarray halten wo drin steht wo du bauen kannst und dem ganzen Mesh einfach den PickMode geben und gucken "worauf gepickt" wird |
||
| Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. | ||
|
|
MCWulf |
Antworten mit Zitat |
|---|---|---|
| ach, geht das auch? is ja cool, thx! | ||
Übersicht
BlitzBasic
Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group
