Zeichnen/Linie

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

  • Zeichnen/Linie

    Also habe da so ein Problem...

    Ich möchte gerne ein ähnliches Spiel wie Inkball erstellen(kennen vielleicht welche die Vista haben(im Ordner "Spiele" zu finden))

    In dem Spiel geht es darum 2 Bälle in verschiedener Farbe (blau,orange) in 2 verschiedene Löscher (blau,orange) zu bringen.

    Dies schafft man dadurch indem man mit der Maus(ist dort als stift dargestellt)Lienien zeichnet wogegen die Bälle dann abstoßen(danach wird die Linie zerstört)



    Meine Frage ist (worde bestimmt schonmal gestellt aber konnte nichts finden, überschrift passt auch nicht umbedingt)

    Wie mache ich das, das an der Maus wenn ich die gedrückt halte und irgendwo langziehe eine schwarze linie entsteht.

    Aber nicht nur so eine gerade linie. Also wnen ich mit der maus (gedrückt) nach oben gehe und dann im bogen nach unten das, das genau so is.

    Ich weiss nicht wie ich es genau erklären sollte.



    Hab da auch schon was ausprobiert(hab einen sprite benutz der 5/5 groß ist und ein schwarzen punkt darstellt), aber wenn ich zu schnell ziehe entsehen lücken zwischen den sprites.

    Achja, habe keine registrierte Version. Vielen Danken schonmal !
  • Jaja das gleiche Problem hatte ich auch, ich schick dir mal ne datei man zieht zwar eine gerade linie ohne Kurven aber ich glaub mal das ist was du meinst ( hab leida ned Vista)
    Dateien
  • Das Spiel von Windoof brauch ne menge Leistung, denke das is mit einzelnen Objekten oda so gemacht, zumindest sieht der Aufbau danach aus ^^
    Versuch, wenn es nur für dich sein soll und dein Rechner nicht zu alt is, einfach mal bei Global Mouse event "instance_create(mouse_x,mouse_y,deinObjekt).
    Dem Objekt einfach nen schwarzen Punkt als Sprite geben dann geht das, auch wenns halt viel Leistung frisst, vllt kriegste es ja hin ^^
    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
  • Naja, so hab ich es ja auch eigt. gemacht das problem ist nur, wenn ich zu schnell mit der maus ziehe enstehen so große lücken .

    (Neuer Pc und wollte das eigt. nur für mich machen)
  • OK ich kann dir mal mein Paint schicken da kann man nur zeichnen leider ohne collision, vielleicht funkt das bei der Lite version, ich kann es leider nicht testen ob es funkt auf der Lite weil ich ja die registrirte version hab.
    Dateien
    • Paintl..zip

      (2,67 kB, 129 mal heruntergeladen, zuletzt: )
  • Naja... die stümperhafteste Lösung gegen die Lücken ist sicherlich einfach die RoomSpeed ins unermessliche zu steigern... bei einer Roomspeed von 120 sind die Lücken im Verhältnis zur Speed 30 ja shon um ein Vierfaches verdichtet. Wenn's dir die Leistung nicht zu sehr kaputt macht, kannst Du das so versuchen.
  • Naja wenn du den Room Speed auf 120 drehst, und dann Linien zeichnest, wird das Game schon SEHR verlangsamt!
    Ausserdem macht er bei Roomspeed 120 mehr Objekte/s wenn du klickst, und das würde dan auch wieder sauviel Leistung verschlingen...
    fabse64 -> haiyyu
  • Vielleicht mal mit point_direction und point_distance arbeiten
    Mit point_distance könnte man z.B. je nach entfernung eine for-schleife schreiben, wodurch in die Richtung dann auf der Strecke die punkte gesetzt werden, den Abstand könnte man einstellen und er wäre immer gleich 8|

    Oder um eine noch einfachere Lösung zu wählen, striche langsamer zeichnen ^^
    Evtl das Sprite größer machen =P
    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
  • Schattenphoenix schrieb:

    Evtl das Sprite größer machen =P

    Der :P Smiley geht so: :P | Ohne den Bindestrich für die Nase!
    Sprite größer machen...
    Da gäbs nur ein Problem:
    Wenn der Sprite größer ist, saugt das wieder mehr System Leistung, dann würden es weider weniger FPS werden, und wir hätten das gleiche Problem!
    fabse64 -> haiyyu
  • fabse64 schrieb:

    Wenn der Sprite größer ist, saugt das wieder mehr System Leistung, dann würden es weider weniger FPS werden, und wir hätten das gleiche Problem!


    Das würde sich aber wesentlich weniger auf die Flüssigkeit des Games auswirken...
    Aja da hab ich doch mal so was ähnliches gemacht. Vielleicht hilft dir das. (Weiß nicht obs ohne gereggte Version geht)
    Dateien
    • bounce_line.rar

      (72,33 kB, 127 mal heruntergeladen, zuletzt: )

    © 2008 by Teamgrill Productions
  • fabse64 schrieb:


    Schattenphoenix schrieb:

    Evtl das Sprite größer machen =P

    Der :P Smiley geht so: :P | Ohne den Bindestrich für die Nase!
    Sprite größer machen...
    Da gäbs nur ein Problem:
    Wenn der Sprite größer ist, saugt das wieder mehr System Leistung, dann würden es weider weniger FPS werden, und wir hätten das gleiche Problem!
    Wie der Smiley geht is mir klar aber =P is ne Angewohnheit

    Die größe wirkt sich weniger aus als mehr Objekte und er meinte, dass sein PC recht neu ist, ich seh da nicht viele Probleme, wenn er nich umbedingt ein 50x50 Sprite nimmt, sonst mit point_distance vielleicht versuchen und über nen timer mit Zwischenpunkten was machen, gibt eckige Kurven aber funkt evtl besser (LineRider hat ein ähnliches Prinzip, glaub ich).
    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
  • Ich hab' da vor kurzem mal was gebastelt...
    Das liefert schon bei kleinem Roomspeed gute ergebnisse, im moment hab ichs auf 60 stehen, ist also nicht allzu schnell.
    Das Prinzip ist eigentlich einfach: Es wird nacheinander im jeden Stepevent eins von 2 Objekten an die Position der Maus verschoben.
    Im DrawEvent wird dann zwischen diesen beiden Punkten auf dem Surface eine Linie gezeichnet. Einziges problem: Ich wüsste jetzt erstmal keine Lösung wie du damit Kollisionen hinbekommen könntest.
    Evtl. jedesmal wenn eine Linie gezeichnet wird, deren dicke und Position in einem Array festhalten und hinterher mit collision_rectangle überprüfen?

    Linke Maustaste: Zeichnen
    Rechte Maustaste: Linie ziehen
    Leertaste: Farbe auswählen
    Enter: Strichstärke einstellen

    ACHTUNG: Bei hohen Strichstärken sehen die Ergebnisse eher bescheiden aus. Liegt an den einzelnen Linien.
    Dateien
    • MALPROGRAMM.zip

      (11,84 kB, 107 mal heruntergeladen, zuletzt: )
    "Leben. Erzähl' mir bloß nichts vom Leben."
  • dafür hab ja ich schon eine datei angehängt, ich weiß zwar nicht ob die mit der lite version geht, aber sicher eher als wenn er surfaces verwendet. ausserdem funzt meine mit kollision ;)

    © 2008 by Teamgrill Productions