Schattierungs- und drehungsproblem

  • GM 7
  • Schattierungs- und drehungsproblem

    ich habe 2 probleme und zwar:
    1.habe ich die heli und die dazugehörigen propeller schattiert mit image_alpha(=0.5) nur leider sieht man deutlich die propeller in dem schatten des helis nur soll das realistischerweise zusammenschmelzen :D
    2.sollen 2 variablen den weg eines panzers bestimmen,doch das problem ist das der panzer sich erst dahin drehen soll und dann zu dem punkt bewegen soll ich habe das mal so probiert aber das hat überhaupt nicht geklappt:

    GML-Quellcode

    1. if !direction=dir//dir=point_direction(x,y,move_x,move_y)
    2. {direction+=3;}
    3. else if direction=dir
    4. {move_towards_point(move_x,move_y,5)}


    hier die gmk mit den beiden problemen:schattierung_drehungs_problem.zip

    bitte schnell antworten da ich die demo von mission A mit den verbesserungen heute noch veröffentlichen möchte(dafür ist erstmal das problem mit der schattierung nötig),und leider habe ich morgen keine zeit diese zu veröffentlichen
    Meine Spiele:
    - Mission A
    - Mission B
    - The Virus 1, 2, 3
    - The Virus 4: The Excision
    - Blur melts Snow
    - Blur melts Snow: 2nd Version
    - Cave Jumper

    Hauptrojekt: Party Mania(Arbeitstitel) - große Multiplayer-Minispielsammlung
    In Planung: Planet Jumper(Nachfolger von Cave Jumper)

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

  • Zum 2. Problem:

    GML-Quellcode

    1. dir=point_direction(x,y,move_x,move_y)
    2. if (direction==dir)
    3. {
    4. move_towards_point(move_x,move_y,5)
    5. }
    6. var xx;
    7. xx=dir-direction;
    8. if (xx>3)
    9. {
    10. direction+=3;
    11. }
    12. else
    13. {
    14. if (xx<-3)
    15. {
    16. direction-=3;
    17. }
    18. else
    19. {
    20. direction=dir;
    21. }
    22. }
    23. }
    24. image_angle=direction;
    Alles anzeigen


    Kommen in M A dann auch Panzer vor???
  • Zum ersten Problem hilft dir ein Surface. Zeichne einfach beide Sprites schwarz mit alpha 1 auf ein Surface und zeichne dann dieses im Draw modus mit einem geringeren Alphawert.

    © 2008 by Teamgrill Productions
  • @maxda danke funktioniert :) und ja es wird einen panzer geben nur nicht in der demoversion
    @MasterXY das ist mir jz peinlich aber ich versteh nicht was du meinst :S was ist ein Surface
    Meine Spiele:
    - Mission A
    - Mission B
    - The Virus 1, 2, 3
    - The Virus 4: The Excision
    - Blur melts Snow
    - Blur melts Snow: 2nd Version
    - Cave Jumper

    Hauptrojekt: Party Mania(Arbeitstitel) - große Multiplayer-Minispielsammlung
    In Planung: Planet Jumper(Nachfolger von Cave Jumper)
  • Schau mal in die Hilfe. Surfaces sind eine alternative zeichenfläche, also anstatt direkt auf den Bildschirm zu zeichnen, zeichnest du auf ein Surface. um dieses dann darzustellen usst du nurnoch das Surface zeichnen. Wichtig: wenn du auf ein surface drawst darfst du dies nicht im draw event tun.

    GML-Quellcode

    1. // Beispiel
    2. // Create
    3. s=surface_create(breite,höhe)
    4. surface_set_target(s) // alle folgenden drawaktionen auf dem surface durchführen
    5. draw_clear_alpha(0,0) // surface von grafik aus dem videospeicher freimachn
    6. surface_reset_target() // zurücksetzen
    7. //Step
    8. // Den helikopter samt rotor auf das surface zeichnen, achtung koordinaten des surface benutzen
    9. // also 0,0 ist das surface links oben, positionierung erfolgt dann beim zeichnen des surfaces
    10. surface_set_target(s)
    11. draw_sprite(..) // Die sprites eben, in schwarz und mit alpha=1
    12. draw_sprite(..)
    13. draw_sprite(..)
    14. surface_reset_target()
    15. // Draw
    16. draw_surface_ext(s,x,y,1,1,0,c_white,0.5) // Surface mit alpha=0.5 zeichnen
    Alles anzeigen

    © 2008 by Teamgrill Productions
  • hab versucht den code ins spiel reinzubringen :S :S :S aber es funktioniert i.wie nicht so richtig
    hab die gmk oben geupd mit den versuch die codes ins spiel zu machen,kannste das bitte überarbeiten,müsste doch schnell gehen :S
    sry ich hab vorher noch nie was von surfaces gehört und ich finde das auch nicht in der deutschen hilfe(6.0) gibs wahrscheinlich nur in 7
    Meine Spiele:
    - Mission A
    - Mission B
    - The Virus 1, 2, 3
    - The Virus 4: The Excision
    - Blur melts Snow
    - Blur melts Snow: 2nd Version
    - Cave Jumper

    Hauptrojekt: Party Mania(Arbeitstitel) - große Multiplayer-Minispielsammlung
    In Planung: Planet Jumper(Nachfolger von Cave Jumper)
  • Ich habs mir mal schnell angeschaut, hab grad aber keine Zeit was zu ändern aber:
    • Du brauchst keine Schattensprites mehr (es reicht die normalen sprites in schwarz zu zeichnen.)
    • Du brauchst die Schattenobjekte nicht.
    • du musst mit richtigen Koordinaten auf das surface zeichnen. ( in die mitte des surfaces nachdem der sprite origin beim heli in der mitte ist.)

    © 2008 by Teamgrill Productions
  • Benutzer online 2

    2 Besucher