gwX Forum
Würden Sie gerne auf diese Nachricht reagieren? Erstellen Sie einen Account in wenigen Klicks oder loggen Sie sich ein, um fortzufahren.

objekt um andres drehen

5 verfasser

Nach unten

objekt um andres drehen Empty objekt um andres drehen

Beitrag  !cORe!trike994 So 8 März 2009 - 17:27

nun..wie ihr ja vllt wisst arbeite ich grade an der netten galaxy space-pack erweiterung, und da hab ich eigentlich vor, einen kleinen mond um den planeten drehen zu lassen, mein einziges problem dabei ist, das ich nicht ganz weiß, wie das anzustellen ist, da man mit glrotate ja nur um die eigene achse drehen kann
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Eddy So 8 März 2009 - 17:36

mitm satz des consinus kreis berechnen und dann mit setposition rumrotieren - glrotate kann man dann ja noch zur verschönerung auch einsetzen

Eddy

Anzahl der Beiträge : 509
Anmeldedatum : 14.01.09
Alter : 29

http://systems.bitfarmclan.de

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 So 8 März 2009 - 17:41

öhm..joa, könntest du mir dazu vllt den code gebn?
zhx im vorraus
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  kakerlake So 8 März 2009 - 17:53

@eddy rotieren die vertices dann auch mit?

-> du musst einfach eine schlaufe machen, die den winkel immer erhöht bis 360grad

x achse:
sin(winkel,radius);
y achse
cos(winkel,radius);
kakerlake
kakerlake

Anzahl der Beiträge : 380
Anmeldedatum : 11.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  alra So 8 März 2009 - 17:59

y achse ist sinus, normalerweise Wink

alra
Admin

Anzahl der Beiträge : 53
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 So 8 März 2009 - 18:02

also doposition(sin(winkel,radius),cos(winkel,radius),...)
und wenn ja, was kommt dann bei z hin?
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  kakerlake So 8 März 2009 - 18:08

je nachdem , wie der mond rotiern soll eine feste nummer oder sin/cos

[edit] vllt eher doch nicht sin oder cos ^^
kakerlake
kakerlake

Anzahl der Beiträge : 380
Anmeldedatum : 11.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 So 8 März 2009 - 18:10

naja, eigentlich soll y immer gleich bleiben Smile
also:
Code:

doposition(sin(winkel,radius),0,cos(winkel,radius));
?
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Carli So 8 März 2009 - 18:18

ich würde den Mond in jedem Frame auf Erde-Position setzen, sein R manipulieren und dann ein DoDirPosition mit UmlaufRadius vollziehen.

Carli
Admin

Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 So 8 März 2009 - 18:24

aah..waum bin ich da nich drauf gekommen, das is denk ich ,al das einfachste, danke
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Carli So 8 März 2009 - 18:49

tja.....
warum einfach wenns auch kompliziert geht.
Und die DoDirPosition macht auch nix andres als das, was dir die andren die ganze Zeit zu erklären versucht haben.
@alra: Sin und Cos sind beim Original-Clonk vertauscht. Also so falsch ist Eddys Behauptung gar nciht.

Carli
Admin

Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  alra So 8 März 2009 - 18:52

carli, aso, wusste ich nicht, allerdings ist das dann verwirrend, weil sinus egtl immer y achse ist

alra
Admin

Anzahl der Beiträge : 53
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  kakerlake So 8 März 2009 - 18:58

kommt doch nicht daraf an ob man x oder y als sin oder cos wählt es käme ja auf beide arten ein kreis raus Smile
kakerlake
kakerlake

Anzahl der Beiträge : 380
Anmeldedatum : 11.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Carli So 8 März 2009 - 19:10

ööhm. also genug Verwirrung, hier der O-Ton Engine
Code:
function calcpos(const rel,pos:Tvektor;r:single):Tvektor;
var s,c:single;
begin
 c:=cos(degtorad(-r));
 s:=sin(degtorad(-r));
 result.x:=rel.x*c-rel.z*s+pos.x;
 result.y:=rel.y+pos.y;
 result.z:=rel.z*c+rel.x*s+pos.z;
end;

Und hier ncoh die Scriptfunktion gleichen namens:
Code:
procedure dodirposition(o:Tobjekt;x:integer); stdcall;
begin
 o.sortaus;
 o.pos.x:=o.pos.x-x*sin(o.r/180*pi);
 o.pos.z:=o.pos.z-x*cos(o.r/180*pi);
 o.sortaus;
end;
Daraus könnt ihr den Rest ableiten.

Carli
Admin

Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 Mo 9 März 2009 - 21:50

aah, immerhin das versteh ich Smile,
nun, leider hab ich gleich das näxte problem
bei diesem script kommt: "fehler bei der bereichsüberprüfung"
Code:

cdecl mond_load
{
 loadmodel("model_mond");
 loadtexture("asteroid1hell");
}

cdecl mond_render(o) //Grafik von Trike994
{
 glscale(300,300,300);
 glenable(gl_texture_2d);
 glbindtexture(gl_texture_2d,getid("asteroid1hell"));
 gluseshader(0);
 glcalllist(getid("model_mond_mat"));
}

cdecl mond_init(o)
{

}

cdecl mond_tick(o)
{
 local(o).(1)++;
 setposition(o,getx(GetPosition(getparent(o))),gety(GetPosition(getparent(o))),getz(GetPosition(getparent(o)));
 setr(o,getr + 1);
 DoDirPosition(o,25000);
}

das objekt wird in planet_init mit createchild(o,getid("mond")); geladen
p.s.: sry für die fragen
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 Di 10 März 2009 - 16:41

ok, der fehler war eher logischer natur, klappt jetzt alles(außer das die vertices nich passen, aber das is egal)
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Carli Di 10 März 2009 - 19:09

Vertices nicht passen^^
fällt jemandem ein Annäherungsalgorithmus ein, mit dessen Hilfe man ein Mesh in Vertexinformationen umwandeln könnte?

Carli
Admin

Anzahl der Beiträge : 1001
Anmeldedatum : 02.01.09

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  !cORe!trike994 Di 10 März 2009 - 21:04

also mir nicht
!cORe!trike994
!cORe!trike994
Admin

Anzahl der Beiträge : 937
Anmeldedatum : 29.12.08
Alter : 30
Ort : Rostock/Pforzheim

https://gwxf.forumieren.com

Nach oben Nach unten

objekt um andres drehen Empty Re: objekt um andres drehen

Beitrag  Gesponserte Inhalte


Gesponserte Inhalte


Nach oben Nach unten

Nach oben

- Ähnliche Themen

 
Befugnisse in diesem Forum
Sie können in diesem Forum nicht antworten