Ich habe nun schon einige Tutorials gesehen zum Thema Straßenbau, und überall funktioniert das Skript im GE anders als bei mir.
Wenn ich die Breite anpasse, damit das Gelände links und rechts neben der Straße hinaus angepasst wird, dann wird das Gelände schief.
Wie im Bild zu sehen ist das Gelände an der Spline auf der richtigen Höhe, aber links zu tief und rechts zu hoch. Weiter hinten in der Kurve ist es dann rechts zu tief und links zu hoch. So also für mich total unbrauchbar. Ich benutze übrigens schon den 9.0.2 und etwas anderes als die in den Videos mache ich auch nicht. Was zum Geier mache ich da falsch?
EDIT: PaintTarrainBySpline funktioniert bei mir überhaupt garnicht. Gibt auch keine Fehlermeldung in der Log oder in der Console. Die Textur bleibt einfach wie sie ist.
Terrain mit Spline anpassen funktioniert nicht (richtig)
9 posts
Page 1 of 1
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Man fragt sich ja manchmal schon ob das überhaupt jemanden interessiert, aber ich habe die Lösung für das Problem gefunden.
Man darf die Spline nicht drehen. Sobald die Rotationswerte der Spline etwas anderes anzeigen als 0 0 0 , kommt es zu allerhand seltsamen Problemen. Zb das die Breite nicht richtig eingestellt werden kann, oder das Terrain dann in den Kurven schräg wird. Je größer der Winkel, umso schlimmer.
Also... Spline erstellen, mit STRG+B an Ort und Stelle platzieren, den Punkt "s" löschen, damit der Origin am Anfang ist und "e" in die Richtung verschieben, wo man hin will, und von da aus weiterarbeiten.
PaintTerrainBySpline funktioniert bei mir aber immer noch nicht. Vielleicht finde ich dort den Fehler auch noch.
Man darf die Spline nicht drehen. Sobald die Rotationswerte der Spline etwas anderes anzeigen als 0 0 0 , kommt es zu allerhand seltsamen Problemen. Zb das die Breite nicht richtig eingestellt werden kann, oder das Terrain dann in den Kurven schräg wird. Je größer der Winkel, umso schlimmer.
Also... Spline erstellen, mit STRG+B an Ort und Stelle platzieren, den Punkt "s" löschen, damit der Origin am Anfang ist und "e" in die Richtung verschieben, wo man hin will, und von da aus weiterarbeiten.
PaintTerrainBySpline funktioniert bei mir aber immer noch nicht. Vielleicht finde ich dort den Fehler auch noch.
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Mich interessiert es auf jedenfall! Ich habe gerade jetzt mal das Script ausprobiert und hatte (noch) keine Probleme.
Ich habs aber genauso gemacht wie du gesagt hast bzw. für neue Punkte die "Einfügen" Taste umd da verschoben mit STR+B
Hatte das so bei AgrarModding gesehen
PaintTerrainBySpline habe ich noch nie verwendet. wie ist das überhaupt zu verstehen?
Gruß
Ich habs aber genauso gemacht wie du gesagt hast bzw. für neue Punkte die "Einfügen" Taste umd da verschoben mit STR+B
Hatte das so bei AgrarModding gesehen
PaintTerrainBySpline habe ich noch nie verwendet. wie ist das überhaupt zu verstehen?
Gruß
Des is gkupft wia ghatscht und bis zum Heiratn is wieda guat
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Ich hatte immer den Fehler gemacht und die Spline mal grob mit dem Gismo in die Richtung gedreht in die ich musste. Also in dem Fall entlang der Straße ausgerichtet, damit man schon mal die Richtung hat. Und genau das darf man eben nicht machen. Ich bin beim testen fast wahnsinning geworden. Eine Testspline schnell auf das Terrain geworfen, bissl verlängert, ne Kurve rein, und nach oben gezogen, das Skript ausgeführt und zack... funktioniert wunderbar. Nur meine Spline, die ich entlang der Straße verlegt habe, mit der ging es nicht. Mit keiner von denen... Also habe ich die Splines exportiert auf eine leere Map, selbe Problem.
Dachte dann es hat was mit der länge zu tun, war alles nix. Bis ich dann gesehen habe, das die Splines alle auf der Y Achse gedreht sind, außer die eine zum testen bei der es funktioniert. Also auf Null gedreht und plötzlich funktioniert das wunderbar.
Das PaintTerrainBySpline ist ein weiteres Skript mit dem man Texturen entlang der Spline malen kann. Funktioniert bei mir aber in keinster weise.
Dachte dann es hat was mit der länge zu tun, war alles nix. Bis ich dann gesehen habe, das die Splines alle auf der Y Achse gedreht sind, außer die eine zum testen bei der es funktioniert. Also auf Null gedreht und plötzlich funktioniert das wunderbar.
Das PaintTerrainBySpline ist ein weiteres Skript mit dem man Texturen entlang der Spline malen kann. Funktioniert bei mir aber in keinster weise.
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Ein kleiner Tipp, den Sie vielleicht nützlich finden, wenn Sie Splines in den Terrain Height/Place/Textur-Skripten verwenden
Erstellen Sie den Spline, wählen Sie dann den S-CV aus und löschen Sie ihn. Dadurch wird der Ursprungspunkt in die Spline-Mitte verschoben. Verwenden Sie dann einfach den E-CV, um Ihren Spline in eine beliebige Richtung ohne Rotationsprobleme zu erstellen.
Google Übersetzer verwendet
Erstellen Sie den Spline, wählen Sie dann den S-CV aus und löschen Sie ihn. Dadurch wird der Ursprungspunkt in die Spline-Mitte verschoben. Verwenden Sie dann einfach den E-CV, um Ihren Spline in eine beliebige Richtung ohne Rotationsprobleme zu erstellen.
Google Übersetzer verwendet
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
@TheSuBBie Ja, ich hab das bereits so gemacht, aber es hat nicht wirklich einen Unterschied gemacht.
Ich habe allerdings inzwischen auch den Fehler gefunden, warum das mit dem TerrainPainting per Spline nicht funktioniert. Es sind die falschen Nummern eingetragen.
Diese Nummern sind wohl noch aus dem LS19 oder woher auch immer. Ich habe mit niedrigeren Nummern probiert und da funktioniert es.
Jetzt muss ich nur noch eine Tabelle finden, aus der ich die aktuellen ID's herauslesen kann...
Ich habe allerdings inzwischen auch den Fehler gefunden, warum das mit dem TerrainPainting per Spline nicht funktioniert. Es sind die falschen Nummern eingetragen.
Code: Select all
source("editorUtils.lua");
EditorUtils.paintTerrainBySpline(82, 8); -- 80 is asphalt, 71 is grass, 82 is gravel
Jetzt muss ich nur noch eine Tabelle finden, aus der ich die aktuellen ID's herauslesen kann...
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Ok... der Ordnung halber, und weil ich es selber Hasse, wenn andere ein Problem gelöst haben, und es dann für sich behalten, hier die Tabelle für die USMap bzw Elmcreek:
(Thanks again @TheSuBBie for pointing me the right direction)
Code: Select all
00 Layer: "animalMud01"
01 Layer: "animalMud02"
02 Layer: "animalMud03"
03 Layer: "animalMud04"
04 Layer: "concrete01"
05 Layer: "concrete02"
06 Layer: "concrete03"
07 Layer: "concrete04"
08 Layer: "dirt01"
09 Layer: "dirt02"
10 Layer: "dirt03"
11 Layer: "dirt04"
12 Layer: "grass01"
13 Layer: "grass02"
14 Layer: "grass03"
15 Layer: "grass04"
16 Layer: "grassDry01"
17 Layer: "grassDry02"
18 Layer: "grassDry03"
19 Layer: "grassDry04"
20 Layer: "grassDryPatchy01"
21 Layer: "grassDryPatchy02"
22 Layer: "grassDryPatchy03"
23 Layer: "grassDryPatchy04"
24 Layer: "forestGround01"
25 Layer: "forestGround02"
26 Layer: "forestGround03"
27 Layer: "forestGround04"
28 Layer: "gravel01"
29 Layer: "gravel02"
30 Layer: "gravel03"
31 Layer: "gravel04"
32 Layer: "gravelDirt01"
33 Layer: "gravelDirt02"
34 Layer: "gravelDirt03"
35 Layer: "gravelDirt04"
36 Layer: "gravelDust01"
37 Layer: "gravelDust02"
38 Layer: "gravelDust03"
39 Layer: "gravelDust04"
40 Layer: "gravelGrass01"
41 Layer: "gravelGrass02"
42 Layer: "gravelGrass03"
43 Layer: "gravelGrass04"
44 Layer: "gravelMoss01"
45 Layer: "gravelMoss02"
46 Layer: "gravelMoss03"
47 Layer: "gravelMoss04"
48 Layer: "mud01"
49 Layer: "pathway01"
50 Layer: "pathway02"
51 Layer: "pathway03"
52 Layer: "pathway04"
53 Layer: "pathwayGravel01"
54 Layer: "pathwayGravel02"
55 Layer: "pathwayGravel03"
56 Layer: "pathwayGravel04"
57 Layer: "riverBed01"
58 Layer: "riverBed02"
59 Layer: "riverBed03"
60 Layer: "riverBed04"
61 CombinedLayer: "ANIMALMUD"
62 CombinedLayer: "CONCRETE"
63 CombinedLayer: "DIRT"
64 CombinedLayer: "FORESTGROUND"
65 CombinedLayer: "GRASS"
66 CombinedLayer: "GRASSDRY"
67 CombinedLayer: "GRASSDRYPATCHY"
68 CombinedLayer: "GRAVEL"
69 CombinedLayer: "GRAVELDIRT"
70 CombinedLayer: "GRAVELDUST"
71 CombinedLayer: "GRAVELGRASS"
72 CombinedLayer: "GRAVELMOSS"
73 CombinedLayer: "PATHWAY"
74 CombinedLayer: "PATHWAYGRAVEL"
75 CombinedLayer: "RIVERBED"
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Das aktuelle paintTerrainBySpline Script hat einen Bug wenn der Spline rotiert ist. Mit dem nächsten Editor Update wird dies gefixt.
Also Workaround kann man z.B. das Freeze Transform Feature im Editor benutzen um die Rotation auf 0 zurückzusetzen, ohne dass sich der Spline verschiebt (seit GE 9 funktioniert dies nun auch mit Splines).
Die Layer Number hängt von der Map ab.
Die "normalen" Layer fangen bei 0 an und sind in der Reihenfolge wie im i3D deklariert (oder im Terrain Editing Panel drop down).
Danach folgenden die "komplexen" Layer.
Eine Liste wie von Mike77 gepostet, kann man sich z.b. mit folgendem Script generieren (wenn man das Terrain selektiert hat):
Also Workaround kann man z.B. das Freeze Transform Feature im Editor benutzen um die Rotation auf 0 zurückzusetzen, ohne dass sich der Spline verschiebt (seit GE 9 funktioniert dies nun auch mit Splines).
Die Layer Number hängt von der Map ab.
Die "normalen" Layer fangen bei 0 an und sind in der Reihenfolge wie im i3D deklariert (oder im Terrain Editing Panel drop down).
Danach folgenden die "komplexen" Layer.
Eine Liste wie von Mike77 gepostet, kann man sich z.b. mit folgendem Script generieren (wenn man das Terrain selektiert hat):
Code: Select all
local terrainId = getSelection(0)
local numLayers = getTerrainNumOfLayers(terrainId)
for i=0,numLayers-1 do
print(string.format("%d: %s", i, getTerrainLayerName(terrainId, i)))
end
Re: Terrain mit Spline anpassen funktioniert nicht (richtig)
Ah... vielen Dank. Das wäre gestern ganz nützlich gewesen, bevor ich 21 Kilometerlange Splines gelöscht und neu gesetzt habe.
Auch das sieht sehr nützlich aus und dürfte ne ganze Menge Zeit sparen. Dankeschön.Stegei wrote: ↑Fri Mar 04, 2022 2:28 pm Eine Liste wie von Mike77 gepostet, kann man sich z.b. mit folgendem Script generieren (wenn man das Terrain selektiert hat):Code: Select all
local terrainId = getSelection(0) local numLayers = getTerrainNumOfLayers(terrainId) for i=0,numLayers-1 do print(string.format("%d: %s", i, getTerrainLayerName(terrainId, i))) end
9 posts
Page 1 of 1