ihr kennt sicher:
http://intihuatani.usc.edu/cloud/flowing/
wenn man keinen extrafetten rechner hat, lässt sich das nicht wirklich flüssig durchspielen.
ich denke es wäre gut machbar das mit pygame und evtl. pyode nachzubauen.
"fl0w in games" clone
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ist der Laptop der neben mir steht extrafett? Also auf dem lies es sich ganz angenehm spielen - und ich muss zugeben, ich konnte gar nicht mehr aufhören (hab die Schlange durchgespielt aber als Qualle ist der Endgegner wirklich hart).. Kenne es von der letzten c't, wo einige Spiele dabei waren.Dill hat geschrieben:wenn man keinen extrafetten rechner hat, lässt sich das nicht wirklich flüssig durchspielen.
Mit Pygame sowas zu machen stelle ich mir vergleichweise unbequem vor - Pygame (oder genauer SDL) hat einige Sachen die wirklich unangenehm sind, man muss also öfters um die Bugs herumarbeiten.
Zuletzt geändert von Leonidas am Montag 12. März 2007, 17:41, insgesamt 1-mal geändert.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Also ich sitze hier an einem 1 Ghz Athlon, damit ist es unspielbar. Soviel zum Thema extrafetten Rechner. 

-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Wenn du alle gegessen (in dem Kontext wäre das Wort assimilieren gut platziert) musst du auf diesen (ich glaube roten) Marker schwimmen, dann kommst du eine Ebene runter. Habe keine Anleitung gelesen, daher hat es erst etwas gedauert, bis ichs raus hatte.apollo13 hat geschrieben:Hmmm, irgendwie find ich keine Viecher mehr...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
leonidas, du hast auf hoher qualität keine probleme wenn diese dicken viecher kommen?
ich hab hier massives ruckeln mit meinem athlon 3000+.
habe aber auch keine gescheite grafikkarte (radeon 9200), aber da es flash ist solte das doch eher unwichtig sein.
das spiel ist ja nicht sonderlich komplex, kann mir kaum vorstellen, dass SDL damit probleme hat. (was daran liegen könnte, dass ich es noch nie benutzt habe
)
EDIT: komplette regeln gibts hier:
http://jenovachen.com/flowingames/forum ... c.php?t=74[/b]
ich hab hier massives ruckeln mit meinem athlon 3000+.
habe aber auch keine gescheite grafikkarte (radeon 9200), aber da es flash ist solte das doch eher unwichtig sein.
was würdest du denn alternativ vorschlagen?Mit Pygame sowas zu machen stelle ich mir vergleichweise unbequem vor - Pygame (oder genauer SDL) hat einige Sachen die wirklich unangenehm sind, man muss also öfters um die Bugs herumarbeiten.
das spiel ist ja nicht sonderlich komplex, kann mir kaum vorstellen, dass SDL damit probleme hat. (was daran liegen könnte, dass ich es noch nie benutzt habe

EDIT: komplette regeln gibts hier:
http://jenovachen.com/flowingames/forum ... c.php?t=74[/b]
SDL bietet keine Vektorgrafik und das Spiel scheint da Wert drauf zu legen. Tkinter-Canvas oder Cairo würden sich vielleicht anbieten. Falls die denn hübsch bzw. schnell genug sind.
Auf meinem Pentium M mit 1.50 GHz läuft das wunderbarst. Und ja, es ist cool 
Allerdings habe ich irgendwann mangels Futter und entsprechend Evolution abgebrochen; dass es einen Endgegner gibt, wusste ich nicht. Allerdings war da noch ein anderes Vieh so wie ich, mit dem ich mir immer gegenseitig dieses "Dinger" vom Leib gefressen habe.

Allerdings habe ich irgendwann mangels Futter und entsprechend Evolution abgebrochen; dass es einen Endgegner gibt, wusste ich nicht. Allerdings war da noch ein anderes Vieh so wie ich, mit dem ich mir immer gegenseitig dieses "Dinger" vom Leib gefressen habe.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Nein, da der Laptop recht ähnlich ausgestattet ist wie der von apollo13: Core 2 Duo T5500 (1,66 GHz), GeForce Go 7600 (nichts besonderes, mir war nur wichtig dass es eine nVidia ist, weil ich mir die ATI-Scherereien unter Linux sparen will) und 2 GB RAM.Dill hat geschrieben:leonidas, du hast auf hoher qualität keine probleme wenn diese dicken viecher kommen?
ich hab hier massives ruckeln mit meinem athlon 3000+.
habe aber auch keine gescheite grafikkarte (radeon 9200), aber da es flash ist solte das doch eher unwichtig sein.
Auf dem anderen Rechner ist ein Athlon 1700+, aber dort will ich mir Flash gar nicht erst antun.
Y0Gi: Die Aufgabe ist es ja, die anderen Dinger zu fressen - ganz

My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
jaIst der Laptop der neben mir steht extrafett?

das wäre doch die richtige antwort auf die flash-version> is there an extension for SDL available to handle some
> kind of vector graphics? For example for animated,
> colored fonts?
There's SDL_svg for SVG image rendering. It was dead for a while,
but then picked back up
http://lists.libsdl.org/pipermail/sdl-l ... 52386.html

Im tutorial von cario wird nur geizeigt, wie man cairo-grafiken in dateien schreiben kann (pdf, svg), aber man kann es auch über SDL nutzen:
Drawing with cairo to an SDL Surface can be tricky.
Könntest du etwas genauer sagen, was da problematisch ist, das projekt würde ja keine übermässigen anforderungen an SDL stellen.Pygame (oder genauer SDL) hat einige Sachen die wirklich unangenehm sind, man muss also öfters um die Bugs herumarbeiten.
habe mal cairo + pygame getestet. irgendwie ist das zu lahm, oder ich mache was falsch.
Code: Alles auswählen
import cairo
import pygame
import array
import math
def draw(surface, dim):
x, y, radius = dim
ctx = cairo.Context(surface)
ctx.set_line_width(15)
ctx.arc(x, y, radius, 0, 2.0 * math.pi)
ctx.set_source_rgb(0.8, 0.8, 0.8)
ctx.fill_preserve()
ctx.set_source_rgb(1, 1, 1)
ctx.stroke()
def input(events):
for event in events:
if event.type == pygame.QUIT:
sys.exit(0)
else:
print event
#Create Cairo Surface
Width, Height = 512, 512
data = array.array('c', chr(0) * Width * Height * 4)
stride = Width * 4
#init PyGame
pygame.init()
window = pygame.display.set_mode( (Width,Height) )
screen = pygame.display.get_surface()#Draw with Cairo
y = 0
x = 0
while True:
input(pygame.event.get())
surface = cairo.ImageSurface.create_for_data (data, cairo.FORMAT_ARGB32,Width, Height, stride)
x = x + 5
y = y + 5
draw(surface, [x,y,200])
#Create PyGame surface from Cairo Surface
image = pygame.image.frombuffer(data.tostring(),(Width,Height),"ARGB",)
#Tranfer to Screen
screen.blit(image, (0,0))
pygame.display.flip()
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Also den Rotationssupport kannst du zum Beispiel vergessen, denn wie ich festgestellt habe kann SDL nicht gut rotieren - man sollte ein Surface nie mehr als zwei mal rotieren, weil die Qualität darunter stark leidet (habe mal ein Sechseck rotiert, nach einigen Rotationen sah es so aus. Ich habe das letztendlich in den Griff bekommen, aber als Python-Programmierer ist man nicht gewöhnt unelegante Lösungen zu implementieren.Dill hat geschrieben:Könntest du etwas genauer sagen, was da problematisch ist, das projekt würde ja keine übermässigen anforderungen an SDL stellen.Pygame (oder genauer SDL) hat einige Sachen die wirklich unangenehm sind, man muss also öfters um die Bugs herumarbeiten.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Das war jetzt aber kein Beispiel für Deine doch recht harte Aussage. Das die Rotation nix taugt steht AFAIK sogar in der Doku. Damit wäre es dokumentiertes Verhalten und kein Bug.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ok, die Aussage ist vielleicht zu hart geraten, mag sein. Ich habe etwas mit Pygame gespielt, so als Einstieg und auch etwas zum ausspannen. Es gibt aber einige Pygame-Spiele die sogar ziemlich süchtig machen. Ansonsten finde ich aber Pygame ein wenig eingeschlafen, wie SDL eigentlich auch. Man kann da doch einige kleine Details nachbessern, die es angenehmer zu nutzen machen würden.
Ich habe mal in die Dokumentation zu Pygame geschaut und konnte dazu nichts finden. Das man einen Fehler dokumentiert macht es auch nicht sonderlich besser. Ist jetzt meine Meinung als Pygame-Anwender. Würde mich mehr darüber freuen wenn es gescheit funktionieren würde, als über einen zusätzlichen Satz in der Dokumentation. Aber das ist eher eine Sache der SDL.BlackJack hat geschrieben:Damit wäre es dokumentiertes Verhalten und kein Bug.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Also ich meinte, dass die Qualität eines rotierten Bildes nicht besonders ist, das würde ich nicht als Bug bezeichnet. Ist halt einfach nur ein einfacher Algorithmus.
Dein Bild sieht so aus, als wenn nicht beachtet wurde, dass die rotierten Bilder grösser sind als das Ausgangsbild.
Dein Bild sieht so aus, als wenn nicht beachtet wurde, dass die rotierten Bilder grösser sind als das Ausgangsbild.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Du hast recht - in der Anfangsphase habe ich das wirklich nicht beachtet. Später aber schon, nur davon habe ich dann keine Bilder mehr. Inzwischen funktioniert das ja auch passabel, nachdem ich eine Kopie des ungedrehten Bildes immer gespeichert habe und für jede Rotation das Ursprungsbild rotiere.BlackJack hat geschrieben:Dein Bild sieht so aus, als wenn nicht beachtet wurde, dass die rotierten Bilder grösser sind als das Ausgangsbild.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Das hätte man aber auch bei einem besseren Algorithmus so gemacht. Jede Rotation ist verlustbehaftet.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Ok, hast Recht.BlackJack hat geschrieben:Das hätte man aber auch bei einem besseren Algorithmus so gemacht. Jede Rotation ist verlustbehaftet.
Was mir aber jetzt so einfällt: an dieser Stelle hätte man auch Pygame intelligenter machen können, so dass es das speichern und rotieren im Hintergrund selbst macht. Ich sehe darin eigentlich keine größeren Nachteile. Die Rotationsfunktion würde dadurch hochwertiger scheinen als sie ist.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice