I once wrote a test game engine that handled used a one-agent per entity approach, and the idea was that it "should" be close to linearly scale-able. It actually worked quite well. I think in the end I tested it with more than 10,000 entities flying in a flocking/following pattern, and the engine ran like a dream. IIRC the limit with 10,000 entities was more because my GPU on my laptop is crap, and couldn't push much more than that at a single time. With 10,000 entities on my quad-core desktop the app worked like a dream.
Now all this is overkill for a small game, but it did seem to work well. Unfortunately, I'm not sure a game as small as asteroids would work well to have multiple people working on it. Simply because each part of the game (graphics, physics, gui, etc.) are all so small, that multiple developers would just step on each other's toes. Timothy On Mon, Oct 31, 2011 at 9:37 AM, Dennis Haupt <d.haup...@googlemail.com> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > one agent per entity? i'd have done an agent for the whole world and > apply functions like "apply-collision" and "apply-shot-fired" to it > > Am 31.10.2011 14:46, schrieb Timothy Baldridge: >> Haha! I forgot about Java2d... Yeah, that would work just fine. >> No, Clojure does not support remote agents. But agents can really >> help in a system like this to express objects as distinct entities. >> That is, you have one object per item on the screen, and then each >> object basically can "live" on its own: >> >> (send entity update-time timespan) >> >> (send asteroid do-split) >> >> etc. >> >> Actually, this really isn't too long of a project, at least the >> asteroids part isn't. >> >> Timothy >> >> On Mon, Oct 31, 2011 at 8:00 AM, Dennis Haupt >> <d.haup...@googlemail.com> wrote: isn't openGL a bit of overkill >> (we can just use java2d), or do you want to add a renderer doing >> all sorts of awesome stuff which totally contradicts the >> white-polygon-on-black-background graphics? might give the game a >> pretty unique look :) >> >> Am 31.10.2011 12:41, schrieb Timothy Baldridge: >>>>> I'd be up for something like this. I have a fair amount of >>>>> clojure experience, and I've done quite allot of work with >>>>> OpenGL in other languages, so this actually sounds fun! >>>>> Another option to consider, is the old DOS version of >>>>> SpaceWar! >>>>> >>>>> http://www.youtube.com/watch?v=yY5qHe2VadA >>>>> >>>>> I like the idea of doing a Asteroids/Spacewar! clone, mostly >>>>> because it would give us a chance to introduce Agents as the >>>>> building block of the game engine. >>>>> >>>>> Timothy >>>>> >>>>> On Sun, Oct 30, 2011 at 1:32 PM, Dennis Haupt >>>>> <d.haup...@googlemail.com> wrote: hi community, >>>>> >>>>> i decided to create a (small) game in clojure to get a bit >>>>> of non-theoretical experience. i'm pretty much a clojure noob >>>>> (only did a few experiments) but have done a few real things >>>>> in scala - which is totally awesome btw - so i do have some >>>>> functional programming experience. >>>>> >>>>> if there's someone here who would like to join, just do so >>>>> by answering "yes" or something like that. >>>>> >>>>> i was thinking about a game like asteroids, tower defense or >>>>> that old game with lots of aliens on the top and two players >>>>> at the bottom, shooting upwards. >>>>> >>>>> >>>>> >>>>>> >>>>>> -- You received this message because you are subscribed to >>>>>> the Google Groups "Clojure" group. To post to this group, >>>>>> send email to clojure@googlegroups.com Note that posts from >>>>>> new members are moderated - please be patient with your >>>>>> first post. To unsubscribe from this group, send email to >>>>>> clojure+unsubscr...@googlegroups.com For more options, >>>>>> visit this group at >>>>>> http://groups.google.com/group/clojure?hl=en >>>>> >>>>> >>>>> >> >> >>> >>> -- You received this message because you are subscribed to the >>> Google Groups "Clojure" group. To post to this group, send email >>> to clojure@googlegroups.com Note that posts from new members are >>> moderated - please be patient with your first post. To >>> unsubscribe from this group, send email to >>> clojure+unsubscr...@googlegroups.com For more options, visit this >>> group at http://groups.google.com/group/clojure?hl=en >> >> >> > > > - -- > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v2.0.14 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iQIcBAEBAgAGBQJOrrKfAAoJENRtux+h35aG8xMP/RNYGqwEAXbuovpdI1KDyiny > fxUTQc+cppQwDNl43OwkdHlqlj7hHoWZVSshd5GoKjTBGGU/H6McILD0mKCvGUPw > EMOSDdzORPEJkQFc/VINGzBW3veQwAy/3K6TujwyO6ChsSCGbBepSABVvAtdUHpM > xU9CkSCu2s5iwxO25CrlsTliwV6xAAwUUkM0Rp7AR+qYco5msOPLBG0+KU/XVIPO > hqRX82SaqifPAbk2Yx4vRoR5wamF0w4vd0rRMVENMckImI3DteX1To+k3hHwCvLt > GJKyHwJXZRJ0JzBzUITjqfuVUI9pW+71RBh5odb13PuDNOpRou/k/JgDeTXK6e8t > l1BKpbchs+ar1IO38mlWSvsVwYDySuzkopBH1cSgOyAgUa1Yi/0HNSA05BgXxlyZ > voGnTGBjis/eLZ2Bdbz3EgITetxG/ypM41hlIj0QHEX6JWiAP9tCq7xvTLUVQ0a4 > zzt+knoDOatQwbn+TgtcYyfl8ObtVrMJaQhpY5PnpdN3MDXFVqJpIZ8urm2UAn9w > 35V+SiIV3/1UOAVaEdzmCLhDMPcHCuuB09rWZ7QpcywnomDyoGmURcog7hZX64hJ > OrhqBc1j39LmNwWO1cxSn9rPITsb8tozXt3VW5hIMXPWuIw2/uVla72PNl3jS7t8 > OabAgU9XWOlNQOb5Vd/4 > =FyCY > -----END PGP SIGNATURE----- > > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en -- “One of the main causes of the fall of the Roman Empire was that–lacking zero–they had no way to indicate successful termination of their C programs.” (Robert Firth) -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en