3D, Ich kiregs nichtmehr hin

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • 3D, Ich kiregs nichtmehr hin

    Hi,
    normalerweise arbeite ich viel mit 3D. Ich habe Mir heute GM8.1 auf meinen neuen PC heruntergeladen, und wollte mal etwas in 3D ausprobieren.
    Also habe ich den Game einige basis 3D codes geben, hab auf start gedrückt, und was passiert: das game ist 2D.
    Den maus bewegungsdoe habe ich shcon 5 mal benutzt, und trotzdem klappt er nicht.
    Alle 3D objekte werden Wie in 2D auf die Fläche hingeschmissen, von 3D keine spur.
    Habe Alte 3D files auf mien rechner geezogen (von mir), die funkionieren perfekt, also habe ich die codes einfach übernommen, doch wieder, nichts funktioniert.
    Hab mir auch mehrmals moolts tutorials durchgelesen, kann aber nciht erkennen was ich jetzt falschmache.

    Hier die codes:
    Spoiler anzeigen

    GML-Quellcode

    1. Information about object: obj_player
    2. Sprite: mask_twighlight
    3. Solid: false
    4. Visible: true
    5. Depth: 0
    6. Persistent: false
    7. Parent:
    8. Mask:
    9. Create Event:
    10. execute code:
    11. d3d_start();
    12. d3d_set_perspective(true);
    13. d3d_set_lighting(false);
    14. d3d_set_fog(true,c_black,1,1024);
    15. d3d_set_shading(false);
    16. d3d_set_culling(false);
    17. d3d_set_fog(true,c_white,500,800);
    18. z=0;
    19. tex=sprite_get_texture(spr_twighlight_hair,0);
    20. my_ang=0;
    21. my_dir=0;
    22. draw_set_color(c_white);
    23. draw_set_alpha(1);
    24. Step Event:
    25. execute code:
    26. m_x=mouse_x;
    27. m_y=mouse_y;
    28. window_mouse_set(view_wview[0]/2,view_hview[0]/2);
    29. my_dir+=m_x-mouse_x;
    30. my_ang+=m_x-mouse_y;
    31. if(my_ang>90)my_ang=90;
    32. if(my_ang<-80)my_ang=-80;
    33. Draw Event:
    34. execute code:
    35. d3d_draw_wall(x,y-18,z,x,y+18,z+36,tex,1,1);
    36. d3d_set_projection(x,y,z+18,x+sin((my_dir+90)*pi/180),y+cos((my_dir+90)*pi/180),z+tan((my_ang-90)*pi/180),0,0,1);
    Alles anzeigen


    GML-Quellcode

    1. Information about object: obj_ground_128
    2. Sprite: mask_ground
    3. Solid: false
    4. Visible: true
    5. Depth: 100
    6. Persistent: false
    7. Parent:
    8. Mask:
    9. Create Event:
    10. execute code:
    11. tex=background_get_texture(tex_ground);
    12. Draw Event:
    13. execute code:
    14. d3d_draw_floor(x+128,y+128,0,x,y,0,tex,4,4);
    Alles anzeigen




    Was mache ich falsch? Ich bin mir irgendwie sicher das ich malwieder ne kleinichkeit übersehn habe, doch erkenn nicht was.

    danke im vorraus, Hellfish

    ---------------------

    edit:
    ich habe jetzt alle codes aus moolts tutorial rauskopiert, so so das sich die spile vom coed her übereinstimmen, trotzdem funkioniert es bei mir nochnciht, und ich habe keine ahnung was ich falsch mache.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Hellfish ()

  • GML-Quellcode

    1. d3d_draw_wall(x,y-18,z,x,y+18,z+36,tex,1,1);
    2. d3d_set_projection(x,y,z+18,x+sin((my_dir+90)*pi/180),y+cos((my_dir+90)*pi/180),z+tan((my_ang-90)*pi/180),0,0,1);

    Bist du dir sicher, hier keinen Fehler gemacht zu haben?
    d3d_set_projection( ... ); muss vor allen 3D Zeichenfunktionen aufgerufen werden.

    Hast du obj_ground_128 zufällig vor obj_player in den Raum gepackt?
    Dann wird der Code von obj_ground nämlich vor dem Code von obj_player ausgeführt.

    PS: poste bitte deine gmk ( wenn möglich ).
    Dann können wir dir auch besser helfen.

    - Tobi97