Laufen auf Kugel
Übersicht

![]() |
pixelshooterBetreff: Laufen auf Kugel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich möchte, das der Player auf der Kugel läuft. Mein Problem ist nun, das ich irgendwie die negative y-Achse auf das Zentrum der Kugel ausrichten möchte.
Wie mache ich da? Mein nicht funktionierendes Prog: Code: [AUSKLAPPEN] Graphics3D 800,600
welt = LoadMesh("welt.b3d") DebugLog MeshDepth(welt) ScaleMesh welt,10,10,10 DebugLog MeshDepth(welt) player = CreatePivot() camera = CreateCamera(player) sun = CreateLight(2) PositionEntity sun, 2000,2000,-4000 CameraRange camera,0.1,5000 PositionEntity player,0,0,-MeshDepth(welt) / 2 -100 Repeat If KeyDown (200) Then MoveEntity player,0,0,1 If KeyDown (208) Then MoveEntity player,0,0,-1 UpdateWorld RenderWorld Flip Until KeyHit (1) End |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
nutze ql:aligntovector für die y-achse und dann turnentity um 180° um z oder x.... so kannst du die y-achse permanent auf das zentrum ausrichten.
aber es gäbe noch ein paar andere, nettere dinge. also, mein persönlicher favorit wäre, immer ql:linepick in richtung des zentrums zu machen, den player zum zentrum fallen zu lassen, wenn das linepick auf nichts trifft, und sonst immerden player mit aligntovector an den normalen der getroffenen kugeloberfläche auszurichten (ql:pickednx()yz) |
||
MrKeks.net |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
aber AligntoVector benutzt relative Koordinaten | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Und wo ist da das Problem?
PickedNY (wenn du wie oben empfohlen gepickt hast) wird immer die Richtung der Kugeloberfläche "unter" dir angeben, also die Richtung, welche für dein Objekt auf der Kugel die "Y Richtung" definiert, sprich die Richtung in welche die Y Achse deines Objektes ausgerichtet werden muss. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
ah, VIELEN DANK!
aber: Das Licht bewgt sich nicht mit dem player mit!! Code: [AUSKLAPPEN] Graphics3D 800,600
welt = LoadMesh("welt.b3d") ScaleMesh welt,10,10,10 player = CreatePivot() camera = CreateCamera(player) TurnEntity camera,0,0,180 light = CreateLight(player) ;PositionEntity light, 2000,2000,-4000 CameraRange camera,0.1,5000 PositionEntity player,0,0,-MeshDepth(welt) / 2 -100 Repeat DebugLog "light " + EntityX(light,0) + "/" + EntityY(light,0) + "/" + EntityZ(light,0) + "/" DebugLog "player " + EntityX(player) + "/" + EntityY(player) + "/" + EntityZ(player) + "/" AlignToVector player,EntityX(welt) - EntityX(player),EntityY(welt) - EntityY(player),EntityZ(welt) - EntityZ(player),2 If KeyDown (200) Then MoveEntity player,0,0,10 If KeyDown (208) Then MoveEntity player,0,0,-10 If KeyDown(203) Then MoveEntity player,10,0,0 UpdateWorld RenderWorld Flip Until KeyHit (1) End |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
CreateLight([Type],[Parent]) ![]() Du hast als Typ den Player angegeben, das kann nicht funktionieren. |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() So, jetzt kommt die Lampe mit, aber der Debuglog merkt davon nix!? |
||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Weil du EntityX(Light,0), also für das relative X zum Parent nimmst.
Nimm besser EntityX(Light,1), damit die globale Position angezeigt wird. |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
![]() |
pixelshooter |
![]() Antworten mit Zitat ![]() |
---|---|---|
??? Laut onlinehilfe ist der Parameter 0 global. aber danke | ||
>> Musikerstellung, Grafik und Design: http://www.pixelshooter.net.tc |
![]() |
FreetimeCoder |
![]() Antworten mit Zitat ![]() |
---|---|---|
![]() |
||
"Wir haben keine Chance, aber wir werden sie nutzen!"
Projekte: Dexterity Ball (100%) Aquatic Atmosfear (22 % ca 4700 Zeilen) eingefrohren mangels OOP Fähigkeiten von Blitz (ehemals Uboot) PC: Intel D 3 GHz | NVidiaGforce 6700 256 Mb | 1024 Mb DDR RAM 400 Mhz | 2x160 GB S-ATA |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group