Lieber Besucher, herzlich willkommen bei: Game Maker Domäne. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.
Benutzerinformationen überspringen
Game Maker Version: 8.1 Standard
Selbsteinschätzung: GML Fortgeschrittener
Danksagungen: 25
[2]|
|
GML |
1 2 3 4 5 6 7 8 |
d3d_start(); //Aktiviert den 3d Modus d3d_set_perspective(true); //Lässt uns die Kamera-Perspektive verstellen, dazu später. d3d_set_lighting(false);//Deaktiviert die Benutzung von Lichtern, vorerst brauchen wir keine. d3d_set_fog(true,c_black,1,1024);//Aktiviert die Benutzung von Nebel, der Nebel startet bei 1, und endet bei 1024. d3d_set_shading(false); //Aktiviert die Benutzung von Schatteneffekten, zum besseren Verständnis Bild 3 angucken. d3d_set_culling(false); //Diese Funktion ist erstmal nicht wichtig, Anfänger sollten diese jedoch auf false haben um Probleme zu vermeiden. z=200; //Wir erstellen noch eine Variable "Z", diese wird nacher wichtig. draw_set_color(c_white); |
|
|
GML |
1 |
d3d_set_projection(obj_player.x-1,obj_player.y-1,z,obj_player.x,obj_player.y,1,0,0,1); //Die Kamera guckt von der Position des Objekts "obj_player" auf die Position des Objekts "obj_block" also auf zweimal die gleiche Position, deswegen Topdown. Die Variable "z" gibt die Höhe an, von der gesehen wird. |
|
|
GML |
1 |
d3d_set_projection(obj_player.x-20,obj_player.y-1,z,obj_player.x,obj_player.y,1,0,0,1);//Die Position der Kamera wird 20 nach hinten gesetzt. |
|
|
GML |
1 |
z-=8 // Das bedeutet immer wenn man nach oben scrollt, verringert sich die Variable "z" um 8 und die Kamera zoomt näher an das Objekt "obj_player". |
|
|
GML |
1 |
z+=8 |
|
|
GML |
1 2 |
repeat 20 instance_create(random(250),random(250),obj_block); //Erstellt 20 mal in einem Zufalls Bereich von 250 Pixeln das "obj_block" tex = background_get_texture(tex_floor); //Wollen wir einen background als textur verwenden, müssen wir diesen Befehl benutzen. In diesem Fall speicher ich die Textur in einer Variable, damit sie nicht jeden Step neugeladen werden muss. |
|
|
GML |
1 |
d3d_draw_floor(x+200,y+200,0,x-200,y-200,0,tex,6.25,6.25); //So ein Code ist erst sehr verwirrend, aber wer sich in 2D auskennt denkt einfach wieder an unseren Graphen. Wie lassen einen Floor (Dt.: Boden, Im GM eine Fläche) zeichnen. Besser zum verstehen in Bild 4. |


[4]|
|
GML |
1 2 3 4 5 |
d3d_transform_set_identity(); d3d_transform_add_rotation_z(direction); d3d_transform_add_translation(x,y,0); d3d_draw_block(-5,-4,0,+5,+4,5,tex,1,1);//Zeichnet einen Block d3d_transform_set_identity(); |
|
|
GML |
1 2 3 |
if (keyboard_check(vk_up)){speed=2}else{speed=0}; //Wenn die Pfeiltaste nach oben gedrückt wird, ist die Geschwindigkeit=2 sonst ist sie =0. if (keyboard_check(vk_left)){direction+=4}; //Die direction ist die Richtung in die unser Objekt guckt, es beweget sich ebenfalls in die Richtung der Variable direction if (keyboard_check(vk_right)){direction-=4}; |

Dieser Beitrag wurde bereits 32 mal editiert, zuletzt von »Moolt« (28. Juli 2008, 21:17)
Benutzerinformationen überspringen
Game Maker Version: 7 Pro
Selbsteinschätzung: GML Fortgeschrittener
Aktuelles Projekt: Mööp
|
|
GML |
1 2 3 4 |
d3d_transform_set_identity(); //Wenn es mehrere Rotationen im Spiel gibt werden diese vor dem Zeichnen für diese Objekt deaktiviert. d3d_transform_add_translation(-x,-y,0); //Legt die Rotationsachse fest d3d_transform_add_rotation_z(direction); //Legt die Rotation Fest. (min 0° max °360). Hier nehmen wir erstmal die direction. d3d_transform_add_translation(x,y,0); d3d_draw_block(x-5,y-4,0,x+5,y+4,5,tex,1,1)//Zeichnet einen Block d3d_transform_set_identity(); |
|
|
GML |
1 2 3 4 5 |
d3d_transform_set_identity(); //Wenn es mehrere Rotationen im Spiel gibt werden diese vor dem Zeichnen für diese Objekt deaktiviert. d3d_transform_add_translation(-x,-y,0); //Legt die Rotationsachse fest d3d_transform_add_rotation_z(direction); //Legt die Rotation Fest. (min 0° max °360). Hier nehmen wir erstmal die direction. d3d_transform_add_translation(x,y,0); d3d_draw_block(x-5,y-4,0,x+5,y+4,5,tex,1,1)//Zeichnet einen Block d3d_transform_set_identity(); |
Benutzerinformationen überspringen
Game Maker Version: 8.1 Standard
Selbsteinschätzung: GML Fortgeschrittener
Danksagungen: 25
. Danke jedenfalls, dass Du das Teil korrigiert hast. Ja, als Grundlage sehr ansehnlich. Mal gucken, vielleicht wage ich sogar einige Versuche mit deinem Tut... ich find's zwar seltsam, dass Du keine GMK gepostet hast, aber schließlich soll das Tutorial ja dabei helfen sowas von der Grundlage her seblstständig zu erlernen. Benutzerinformationen überspringen
Game Maker Version: 7 Pro
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Blacksmith - Escape to Efral
Am einfachsten ist es, Models mit einem Programm (kostenlos: "Anim8or") zu entwickeln und diese z.B. via "Marzipan" in GML-Code umzuwandeln. Wenn ich richtig informiert bin, gibt es für den "Anim8or" sogar ein Plugin, das es ermöglicht, nach GML zu exportieren.Aber sga mal, wie kann man denn andere Objekte als diese Geometrischen Teile in 3D machen?
Benutzerinformationen überspringen
Game Maker Version: 7 Pro
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Blacksmith - Escape to Efral
Benutzerinformationen überspringen
Game Maker Version: 8.1 Standard
Selbsteinschätzung: GML Fortgeschrittener
Danksagungen: 25
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Moolt« (27. Februar 2008, 13:53)
Benutzerinformationen überspringen
Game Maker Version: 7 Pro
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Blacksmith - Escape to Efral
Benutzerinformationen überspringen
Game Maker Version: 6 registriert
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Nix xD

^
Benutzerinformationen überspringen
Game Maker Version: 7 Pro
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Blacksmith - Escape to Efral
Benutzerinformationen überspringen
Game Maker Version: 6 registriert
Selbsteinschätzung: GML Anfänger
Aktuelles Projekt: Nix xD


Benutzerinformationen überspringen
Game Maker Version: 8.1 Standard
Selbsteinschätzung: GML Fortgeschrittener
Danksagungen: 25
|
|
GML |
1 2 3 |
if (keyboard_check(vk_up)){speed=2}else{speed=0} //Wenn die Pfeiltaste nach oben gedrückt wird, ist die Geschwindigkeit=2 sonst ist sie =0. if (keyboard_check(vk_left)){direction+=4} //Die direction ist die Richtung in die unser Objekt guckt, es beweget sich ebenfalls in die Richtung der Variable direction keyboard_check(vk_right)){direction-=4} |

|
|
GML |
1 2 3 |
if (keyboard_check(vk_up)){speed=2}else{speed=0} //Wenn die Pfeiltaste nach oben gedrückt wird, ist die Geschwindigkeit=2 sonst ist sie =0. if (keyboard_check(vk_left)){direction+=4} //Die direction ist die Richtung in die unser Objekt guckt, es beweget sich ebenfalls in die Richtung der Variable direction if (keyboard_check(vk_right)){direction-=4} |