Latest movies now online (for sure, right?!) ;-)

Community Forums/Showcase/Latest movies now online (for sure, right?!) ;-)

ImaginaryHuman(Posted 2005) [#1]
Thanks to Noel Cower who graciously offered up some web hosting space, I have uploaded some movies for your enjoyment. Just click the links below.

http://s87776868.onlinehome.us/NVD/BlobMovie04.avi
http://s87776868.onlinehome.us/NVD/BlobMovie05.avi
http://s87776868.onlinehome.us/NVD/BlobMovie08.avi

These downloaded fine for me here and played in the browser (once downloaded), so you should be all set for viewing!

Hopefully these movies give you a fairly good idea of what my blobby-objects engine looks like, at the moment, in different styles. Plenty more changes to come.

(Thanks again Noel for the webspace! - buy his stuff, or something)


SillyPutty(Posted 2005) [#2]
dammit, our firewall blocks these, d'oh, webmarshal should i say.


ImaginaryHuman(Posted 2005) [#3]
If it's not one thing it's another, lol .... hopefully you can get them from home. If not perhaps someone can email them to you. I probably should've waited another couple of weeks until the planet Mercury isn't going retrograde anymore - totally throws a spanner in the works astrologically since Mercury rules computers and communications. Agh! :-D


ImaginaryHuman(Posted 2005) [#4]
I'll be interested to hear your comments when you do finally get access. They are working for me from work.


Picklesworth(Posted 2005) [#5]
Wow that looks fantastic in motion!

Great job :)


Braincell(Posted 2005) [#6]
They're pretty interesting! I think you said once they're done in Max? Are they?

What are you going to do with them, make a game based on the effect? Screensaver? Music visualisation? I bet with a bit of creativity and imagination you could make a cool game to go around the blob effects.

Idea: Click on the dark/black parts and hold. From that center a brighter circle spreads. When you release the button the circle disappears. If it hits an edge, you loose points. The bigger the circle is before you release the more points you get for it. Now add variations and gadgets on that :)


Bot Builder(Posted 2005) [#7]
A screensaver of that stuff would be awesome....


Picklesworth(Posted 2005) [#8]
He's mentioned a rather interesting sounding game.
I hope whatever it is is quite large because it would be a waste to have that graphics engine go to waste.


ImaginaryHuman(Posted 2005) [#9]
Yes it's written in Max. It doesn't use much of Max2D, it's almost entirely direct OpenGL calls. Actually, not sure if it uses Max2D at all now - just bglCreateContext.

Thanks for your ideas Lenn, I hadn't thought about tying it into music, that would sure be cool. I have definitely thought about a screensaver. I would also like to try to make it into a game and have some ideas in mind. Your idea of trying to make bigger circles without touching the edges is pretty interesting and original. :-) That could perhaps be thought of as an energy shield around the player that you can grow as much as you like but if it touches the edges it shrinks.

The main ideas I've had so far are probably the more obvious ones. Blob objects are really very very versatile, and dynamic, so there's a lot of options. For example you could have one player `open up` pathways between blob areas or `close off` openings to prevent the other player (or something else) getting through. I could imagine that if the blobs were moving around quite a bit it would keep you on the edge of your seat trying to stay within a blob area while trying to grab the goodies without the other playing doing it first - a twist on capture the flag maybe. If the boundaries keep moving you gotta think fast. I think one of the biggest areas of creativity is with manipulating the boundaries and having to deal with the consequences.

Another thing I plan to do, if I add a player character of some kind, is to have an `aura` around the player made of a further layer of blob objects which interacts with the auras of other objects/players/entities. The amount of interaction would then determine some variables such as how strongly the two things are attracted together or how much infection there is or whether communication can take place, etc.

I definitely think a screensaver has potential, though I'd have to find a way to make it actually work as a screensaver on Mac/Linux/Windows. Also the music visualization could very definitely be cool, that's a great idea Lenn!

I also have some other ideas under wraps, one somewhat large spinoff project that I'm considering to do with realtime graphics.

At the moment I'm working on modifying the `fill` texturing inside the blobs - I haven't tweaked it much. I might even be putting some fractals in there. :-)

Thanks again.


ImaginaryHuman(Posted 2005) [#10]
Here's a couple of new screenshots. In these, I'm merged the colors into one field so the blob perimeters are white. I'm dabbling with some different ways of filling the internal areas, here you see some fractals :-) Not realtime or animated, yet.





Picklesworth(Posted 2005) [#11]
Sweet :)


ImaginaryHuman(Posted 2005) [#12]
I really am very open to any ideas for what kind of gameplay you could implement using the blobby objects - since this is something very experimental and, dare I say, pioneering for me, I think there's a lot of potential and possibilities that I haven't even imagined. Take Lenn's ideas for example, tying in the effect to music, or having gameplay to do with proximity to the border limits. I'm open to any other ideas for what you think could be done with this kind of engine or would like to see done with it.

The blob perimeters can be moved in any way desired. For example by placing another blob object, say a basic sphere field, near the edge of the existing perimeter, it will cause the perimeter to bulge out. I thought of using this with some kind of physics thing to show the `impact` of a collision or explosion or whatever. I was also thinking of tying a group of blob objects together with some kind of elastic/spring physics structure. It should be possible to make the blob perimeter seem elastic by adding further objects in the right place and size.

There are other certain effects that I know are achievable by tweaking some variables... for example you can raise and lower the threshold at which a blob perimter is formed which can cause the whole blob areas to shrink or expand - can expand to the point of all perimeters disappearing for example, or to close in.
Also the width of the perimeter effect can be altered by doing fewer/more render passes - although increasing the width softens the edges of the internal area.

I'm thinking for example rainbow island, where you could jump on platforms and shoot rainbows wherever you like to make bridges - could easily shoot rainbows to make bridges between blob areas.

Also should it be top-down or sideways on? Should it be a puzzle game like lemmings where you manipulate the blobs with the mouse, stretching out pathways or adjusting the shape?

It's early days yet so I'd love to hear how you think this should evolve.


Braincell(Posted 2005) [#13]
Glad you like the ideas, i have an infinite number of them and they're all yours.

Ok, here's a twist, since you mentioned it can be elastic edges. Make one of the goodies the player collects as such to appear and bounce off the edges (a bit of physics) and at the same time influence them to move, and the player needs to increase his force field so that he captures that flying object and his force field doesnt touch the edges. You can experiment with the size of the perimiters and speed of force field inflation and make something out that really requires reflexes. Further, i think you could make a pretty big level where there isnt just "one screen" but the player moves around and the camera follows him in all 4 directions.

I think it can be made into a great logic/action game. For example collect a few crucial elements, and at the place where you collect them a "trace" appears. Now after you collect all of them, for example 3, you need to make all traces appear inside the same border. You do that by making bridges like youn mentioned, or pushing and inflating the edges while the blob itself is constantly trying to contract and become smaller. At that time you might also have an oponent thats doing the same thing against you, but you share only 1 of the "traces" so that 1 (or 2 if you want) is crucial to protect. You can make it hard enough with blob contraction alone, but AI is always fun so you might wanna see how it turns out. Along the way you can add many dynamic stuff, for example the "goodies" can fly around and bounce like you and i mentioned and once you capture them they leave the trace. Theres a gazillion variations. You can have a bunch of stuff as well, that uses energy if you use it. Stuff like you throw a field that slows a goodie down or the oponent down, or traps it for a moment, or create a wall or sphere which stays for a number of seconds that nothing can break thru and the blobs cannot contract over it, etc,etc,etc,etc...

It should be top down in my opinion, as well.

Uhhh ... there you go i hope it gives you ideas of your own and that you do something out of it. I got more as well, but noone likes to work on someone elses ideas, its always more motivating that you realise your own ideas and be creative! So be creative, and take your fun.


ImaginaryHuman(Posted 2005) [#14]
Thanks Lenn. Yes I was already planning it to be multiscreen. It shouldn't be too difficult to implement scrolling. The interesting thing with making an environment with blobs is that you only need to draw so many before you fill the screen - beyond that adding more blobs doesn't add anything to the environment (except maybe move the perimeter out by just a little bit). So I only need a certain number of objects onscreen, and the way the engine works it is built to accept infinite number of blobs. So having like a 15x15 screen play area (for example) with, say, a total of 1000 blob objects, shouldn't be difficult. It only has to render the blobs that are onscreen. The offscreen stuff would be done with a separate blob-approximation CPU routine to handle collisions etc. (since reading the framebuffer is very slow).

I like the idea of the traces and the fixed walls that prevent the perimeters from moving. That's all perfectly doable. At the moment though we're sort of thinking in terms of having this basic environment and adding players and objects to it. I gotta find a vision of an overall original game concept. A nice-looking blob effect with a bunch of done-before gaming ideas isn't going to make it a good game.

I do hope to have it so that the main character can `merge` with the blob perimeter to acheive certain things. For example, merging with it will leave a `trace` of the player at that spot and then that spot will act as a place to return to like a save-position spot. So the user can create their own save positions, where available.

Gotta keep plodding on :-)


Braincell(Posted 2005) [#15]
Oh you mean to have levels and progress? I thought you'd have just one small level with progressing difficulty and each time getting a new feature, and then later being able to play anything.


ImaginaryHuman(Posted 2005) [#16]
Um .. no, not really. There's nothing preventing the engine from handling multiple screens and scrolling. The algorithm isn't based on having only a low number of objects to consider or compare. It uses a brute force rendering method where adding another object simple merges it with the existing blob field perfectly, so it doesn't matter where the blobs are or how many. I am intending, at least for now, to have it be multi-screen and scrolling, maybe it could even be wraparound scrolling aka defender games, in both directions. Since the display is being generated in its entirity each frame there is no difficulty having to try to split rendering operations into 4 parts or whatever - the coords would be worked out relative to the screen and if its visible it gets drawn in one go.

There can also be many different types of blob effect (two shown above) at the same time, it doesn't have to be all one kind. The only thing I have to bare in mind is the amount of videoram it consumes. I am expecting the engine to be *at least* a multidirectional scrolling engine. And heck, maybe I'll even come up with some kind of multidimensional scroll that lets you go in and out of the screen too. It could be fully zooming in realtime with not much extra overhead - ie zoom out when two players get further apart - except I have another idea for a dynamic splitscreen in that case.

Also since the gfx are generated in realtime there isn't any need to use a lot of ram to store a `map` as such, like there would be with a superbitmap, so levels could technically be huge. I don't know about `progress`, that hasn't been designed/designed yet. Ideas? I thought maybe that the energy fields had to be `balanced` or something in order to ascend to the next level. Since we have this whole idea of blobs, it'd be nice if levels could merge into each other in some kind of blob-like way, too.


Erroneouss(Posted 2005) [#17]
Looks very cool! Nice work!


ImaginaryHuman(Posted 2005) [#18]
Thanks.


ImaginaryHuman(Posted 2005) [#19]
I decided to spill the beans on how this effect basically works. I have submitted a tutorial which you can read here, complete with sourcecode:

http://www.blitzbasic.com/Community/posts.php?topic=45716