Vertices, Primitives etc. Fehler bei der Darstellung.

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

  • Vertices, Primitives etc. Fehler bei der Darstellung.

    Ich habe mich drangesetzt und wollte schauen, ob ich einen Schleim hinkriege, der sich an seine Umgebung anpasst.
    Ich hab erst angefangen, aber diese Vertices und ähnliches machen mir das Leben schwer.

    Das hab ich bereits gemacht (Problem is unten):

    GML-Quellcode

    1. bsize=30;
    2. draw_primitive_begin_texture(pr_trianglefan,sprite_get_texture(spr_pl,0));
    3. draw_vertex_texture(x,y,0,0);
    4. edges=36;
    5. for(i=0;i<=edges;i+=1)
    6. {
    7. var xx, yy, stepx, stepy, dir;
    8. xx=x+lengthdir_x(bsize,i*(360/edges));
    9. yy=y+lengthdir_y(bsize,i*(360/edges));
    10. dir=(360/edges)*i;
    11. stepx=lengthdir_x(1,dir);
    12. stepy=lengthdir_y(1,dir);
    13. if(!collision_line(x,y,xx,yy,obj_solid,1,1))
    14. {
    15. draw_vertex_texture(xx,yy,1,1);
    16. }
    17. else
    18. {
    19. xx=x;
    20. yy=y;
    21. for(i=0;i<=bsize;i+=1)
    22. {
    23. if(!collision_point(xx+stepx,yy+stepy,obj_solid,1,0))
    24. {
    25. xx+=stepx;
    26. yy+=stepy;
    27. }
    28. else
    29. {
    30. draw_vertex_texture(xx,yy,1,1);
    31. break;
    32. }
    33. }
    34. }
    35. }
    36. draw_primitive_end();
    Alles anzeigen


    Das Thema dabei ist, dass wenn ein "Punkt" auf einen Gegenstand trifft (hier obj_solid) müsste er näher am Ausgangspunkt gesetzt werden.
    Was der GM allerdings macht, ist: Er lässt ihn ganz weg und lässt alle eigentlich nachfolgenden Vertices aus.

    Ausserdem habe ich das Problem, dass sich der Gamemaker in einer Endlosschleife aufzuhängen scheint, wenn zu viele Vertices übersprungen werden.

    Wenn ich beispielsweise 10 oder mehr "Kanten" angebe, stürzt er schon beim Laden ab.
    Mit 5 geht es, das ist aber nicht das Ziel... und ich denke nicht, dass 10 Vertices (mit den Annäherungen der Punkte) so viel Leistung frisst, dass das ganze in die Knie geht.

    Vielleicht ist es meine Unfähigkeit und ich hab etwas übersehen, aber mich verlässt der Mut nach 30 Minuten das selbe Problem, ohne einen Lösungsansatz zu haben.
    Wäre nett, wenn ihr mal drüber schauen könntet, vielleicht findet ihr was, oder könnt mir die Funktionen etwas genauer erklären.
    Ich denke, sie sind in der Hilfe zimlich schlecht erklärt, aber ich hab mein bestes getan, es zu verstehen und da tu ich mich normal nicht SOOO schwer.

    Danke im Vorraus~!

    EDIT: Sorry wegen der Formatierung, das Forum streikt mal wieder. Hier nochmal auf PrivatePaste mit richtiger Formatierung: Click!
    So far, Schattenphoenix~
    _____________________________________________________________________________
    "Who needs a stairway to heaven...
    If there is an elevator to hell... ?
    "
    - Vergessen
    "Auch ein perfektes Chaos ist etwas vollkommenes."
    - Jean Genet