Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
wtcurtis
Jun 13, 2003
Holy crap, Unity is kind of awesome. Always wanted to build a Tetris Attack clone. This is how far I got on a lazy weekend:



I may have slightly overengineered things.

Adbot
ADBOT LOVES YOU

Centripetal Horse
Nov 22, 2009

Fuck money, get GBS

This could have bought you a half a tank of gas, lmfao -
Love, gromdul
I've been plugging away at my own version of Roger Alsing's famous EvoLisa. My version completes evolutionary cycles much faster, but, at least on smaller images, there doesn't seem to be much difference in image fitness over wall-clock time. My version seems to pull way out ahead on larger images.

If you're not familiar with the project, the gist of it is that you throw polygons at a canvas until it starts to resemble a reference image.

Here is my version climbing its way toward a moonlight scene I grabbed from Google Image Search.



A couple others:





If you know anything about the SVG file format, or about the math involved in generating filled polygons, please check out the General Programming Questions thread. I am having some issued with SVG exporting and I will be posting a question in there.

Edit: Question is here.

Centripetal Horse fucked around with this message at 21:43 on Mar 2, 2015

aerique
Jul 16, 2008

Centripetal Horse posted:

I've been plugging away at my own version of Roger Alsing's famous EvoLisa. [...]

If you're not familiar with the project, the gist of it is that you throw polygons at a canvas until it starts to resemble a reference image.

Awesome! I've been playing with this over the years as well, my last attempt used circles to mimic an impressionist's painting:

- https://github.com/aerique/vbwga

The input could be anything but in this case it was used to compete in a competition about Mondrian's Victory Boogie Woogie.

Polio Vax Scene
Apr 5, 2009



That would make an amazing screensaver.

kayakyakr
Feb 16, 2004

Kayak is true

Manslaughter posted:

That would make an amazing screensaver.

especially if it didn't wipe the previous result and just started layering the next image over so you'd see a morph of sorts.

Tres Burritos
Sep 3, 2009

I tried my hand at GPGPU with WebGL this weekend and managed to make a particle field thing. It's rough, but it's doing all the math in the shader which is what counts (at least that's what I keep telling myself).

https://www.youtube.com/watch?v=nCBP0yyhVjg

hendersa
Sep 17, 2006

The 10 hour release process for BeagleSNES is complete! Still need to work on the last thing on the list, though.



Much to my surprise, Hackaday jumped on the new release pretty much immediately. The editors must be actively watching the project now.

I need to hustle and update the documentation before all of the support mails start rolling in. I changed the XML format on the main config file just enough to trigger some questions, though the new config is a superset of the old config. I just know that people are going to clobber the example XML file I provided and then ask me what to do after they have erased it. Oh well. The BeagleSNES image also is, to my knowledge, the only Linux OS pre-made install for the BeagleBone Black that has the OpenGL ES in it. People may end up downloading BeagleSNES just to have a development environment with GLES support.

Protip: When preparing microSD card images for download, cat /dev/zero into a dummy file until you fill the entire partition. Then, sync the filesystem in the partition, delete the dummy file, and then sync the filesystem again. You'll zero out all of the empty space and it will compress much better. My 7.6 GB microSD card image compressed down to 300 MB with xz.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
I doubt it, but do you have any intention of actually releasing your emulator forks as standalone projects on GitHub or similar? You've worked on them so much and I'd hate for them to just be a long-term fork, instead of pushing these improvements back upstream.

hendersa
Sep 17, 2006

Suspicious Dish posted:

I doubt it, but do you have any intention of actually releasing your emulator forks as standalone projects on GitHub or similar? You've worked on them so much and I'd hate for them to just be a long-term fork, instead of pushing these improvements back upstream.

My modifications would not be suitable for inclusion within the original emulator codebases. I used older versions of VBA-M and Nestopia as a base because the newer versions target GUI widget frameworks and add so many bells and whistles that they run too slowly. All emulators have the hooks in place for the BeagleSNES save state GUI, which isn't needed because it duplicates the hotkey/GUI functionality in the original emulator codebases. My gamepad hotplugging detection code is BeagleBoard/Bone specific and would not be of interest to desktop users. The various optimizations that I made come at the expense of disabling existing features used on the desktop (like movie recording/playback) or are ARM-specific (such as using r12 as a scratch register). I doubt the emulator projects would be interested in the changes.

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
Stuff like the GLES rendering though, I'd imagine they would be?

hendersa
Sep 17, 2006

Suspicious Dish posted:

Stuff like the GLES rendering though, I'd imagine they would be?

Nah. Some of the emulators render to texture with OpenGL, but most treat the rendering as a linear framebuffer and use libretro to dump that to a GLES texture and render it transparently to the emulator. My changes toss out any existing GL_QUADS and display lists (which aren't in GLES). I also have flags to cache pixel data into a buffer prior to binding it to a texture because there is no glGetTexImage() in GLES and I know ahead of time if I need to make a snapshot of the current screen this way for the preview image. I talk directly to GLES via EGL. For inclusion into an open source project, the libretro way is much cleaner. My way is messier and not portable, but performance is better. I'm very much favoring performance on one platform versus portability and maintainability on several.

MrMoo
Sep 14, 2000

hendersa posted:

Protip: When preparing microSD card images for download, cat /dev/zero into a dummy file until you fill the entire partition. Then, sync the filesystem in the partition, delete the dummy file, and then sync the filesystem again. You'll zero out all of the empty space and it will compress much better. My 7.6 GB microSD card image compressed down to 300 MB with xz.

There are tools in many OS and file systems to do this for you, e.g. zerofree for ext2/3/4.

Also of note, partimage is a smart version of dd that only copies the used section of a partition.

MrMoo fucked around with this message at 02:51 on Mar 4, 2015

Centripetal Horse
Nov 22, 2009

Fuck money, get GBS

This could have bought you a half a tank of gas, lmfao -
Love, gromdul

aerique posted:

Awesome! I've been playing with this over the years as well, my last attempt used circles to mimic an impressionist's painting:

Circles are high up on my list of things to implement. That's why I implemented them.




Do you have any screenshots from yours? I'm interested in seeing it, but it seemed like a hassle to get it up and running.

aerique
Jul 16, 2008

Centripetal Horse posted:

Do you have any screenshots from yours? I'm interested in seeing it, but it seemed like a hassle to get it up and running.

Yeah, I should have pointed out that in the link I posted there's a couple of PDFs with example output. Here's some actual images and a PDF:


Hmm, I see that the images I uploaded for Victory Boogie Woogie are pretty old and had a bug in the lower right corner. I screwed something up with the coordinates or flipped a sign somewhere.

Also, for reference, these are the input paintings:

aerique fucked around with this message at 09:12 on Mar 4, 2015

hendersa
Sep 17, 2006

I wanted to throw this out to all of you in case anyone is interested. The BeagleBoard.org folks asked me to be a mentor for their organization in the upcoming Google Summer of Code program. So, if anyone was thinking of giving GSoC a shot this year and wants to do something BeagleBone-related, check out the project ideas page to see some projects that have already been suggested. Feel free to come up with your own project and pitch it, too. Now is the time to ask the bb.org folks questions on IRC and get some feedback on your ideas.

Not only is this a pretty sweet way to pump up your resume, but you also get to have me as your drunken father figure for eight weeks (you poor, poor souls). You'll also get an actual paycheck from Google for participating, a BeagleBone Black board, a t-shirt, and probably more hardware (like display capes and stuff) if you can justify it for your project. If, for some reason, you really want to start down the questionable path of coffee-dependence, 18-hour days of hacking, and a desk that looks like a Radio Shack store exploded there, here is your golden opportunity.

You'll also have a pile of awesome screenshots by the end of GSoC that you can share in this thread, and I know the rest of us will be all over that. It will be like Christmas!



:toot:

Knyteguy
Jul 6, 2005

YES to love
NO to shirts


Toilet Rascal
I'm always a little weary to post in here since everyone has such cool technical projects, but screw it.

Here's a little rom manager I started working on for fun:


e: just realized there was a typo on compatibility.

Knyteguy fucked around with this message at 05:48 on Mar 6, 2015

Tres Burritos
Sep 3, 2009

Hah, got my WebGL particle simulator to have velocity and stuff.



Looks much better imo.

Azazel
Jun 6, 2001
I bitch slap for a living - you want some?
The game my buddy and I have been working on is officially released! So happy.



https://itunes.apple.com/us/app/dungeon-slammers-drop/id962292082?ls=1&mt=8

Nippashish
Nov 2, 2005

Let me see you dance!

Centripetal Horse posted:

I've been plugging away at my own version of Roger Alsing's famous EvoLisa. My version completes evolutionary cycles much faster, but, at least on smaller images, there doesn't seem to be much difference in image fitness over wall-clock time. My version seems to pull way out ahead on larger images.

If you're not familiar with the project, the gist of it is that you throw polygons at a canvas until it starts to resemble a reference image.

I made one of these too. I started with triangles but switched to circles because they're pretty.

Germstore
Oct 17, 2012

A Serious Candidate For a Serious Time
That's clever, and pretty convincing at thumbnail size.

Mithaldu
Sep 25, 2007

Let's cuddle. :3:
Here's the first prototype video of my open source multiplayer game inspired by Luftrausers:

https://www.youtube.com/watch?v=DWbOnrrJGNI

Pigmassacre
Nov 23, 2010

GARBAGE DAY

Mithaldu posted:

Here's the first prototype video of my open source multiplayer game inspired by Luftrausers:

https://www.youtube.com/watch?v=DWbOnrrJGNI

Looks cool! Seems chaotic but controllable.

Centripetal Horse
Nov 22, 2009

Fuck money, get GBS

This could have bought you a half a tank of gas, lmfao -
Love, gromdul

Nippashish posted:

I made one of these too. I started with triangles but switched to circles because they're pretty.



Hey, that's cool. That's an excellent choice of picture, too. It has all the right elements to be a good subject for the circle method. I implemented circles in mine, too. I think I want to give that picture a shot, now that I've seen yours.

Edit: I had actually intended to do a water lilies picture. I like the bridge in that particular one.

Mithaldu
Sep 25, 2007

Let's cuddle. :3:

Pigmassacre posted:

Looks cool! Seems chaotic but controllable.
Thanks. :)

The chaoticness right now is mostly because i simply keep spawning bots to a maximum of 10, with random settings. I still need to figure out how to implement an algorithm that handles proper game flow, but before that i actually need to implement a variety of enemies that are actually made up of different parts and have more than one type of gun. :)

Nippashish
Nov 2, 2005

Let me see you dance!

Centripetal Horse posted:

Hey, that's cool. That's an excellent choice of picture, too. It has all the right elements to be a good subject for the circle method. I implemented circles in mine, too. I think I want to give that picture a shot, now that I've seen yours.

Thanks. The circles turned out really nice I think. They work really well for Van Gogh paintings.



If you use enough circles they even do a pretty good job with photos.



I also implemented rectangles. Most of the time they just end up looking like jpg artifacts, but this one came out nice.



I have yet to make anything not-hideous with triangles.

(ed: here's the bridge image, in case you haven't found it already: http://i.imgur.com/XbL9T81.png).

Nippashish fucked around with this message at 01:40 on Mar 9, 2015

kayakyakr
Feb 16, 2004

Kayak is true

Nippashish posted:

Thanks. The circles turned out really nice I think. They work really well for Van Gogh paintings.



If you use enough circles they even do a pretty good job with photos.



I also implemented rectangles. Most of the time they just end up looking like jpg artifacts, but this one came out nice.



I have yet to make anything not-hideous with triangles.

(ed: here's the bridge image, in case you haven't found it already: http://i.imgur.com/XbL9T81.png).

So here's a challenge for your software: Process an image then kick it through google image search and see if it comes back with the original image.

Centripetal Horse
Nov 22, 2009

Fuck money, get GBS

This could have bought you a half a tank of gas, lmfao -
Love, gromdul

Nippashish posted:


(ed: here's the bridge image, in case you haven't found it already: http://i.imgur.com/XbL9T81.png).

That one came out really great. I like it.

I did find the original picture, thanks. That brings me to...


kayakyakr posted:

So here's a challenge for your software: Process an image then kick it through google image search and see if it comes back with the original image.

It does.

Edit: to be fair, it returns to original original, without the Beatles.

Spatial
Nov 15, 2007


Tie dyin' spaceships

clockwork automaton
May 2, 2007

You've probably never heard of them.

Fun Shoe
I'm back to play with hardware so I soldered a second POV device and then hooked both of them to a hula hoop and this happened:

It's a little blurry but it's hearts and stars.

sarehu
Apr 20, 2007

(call/cc call/cc)
A system for organizing who's playing in our weekly golf group. The "edit" is an admin feature to say what the teetimes are.

Only registered members can see post attachments!

poor waif
Apr 8, 2007
Kaboom
I spent my Friday evening writing a MIDI parser in standard Java, and then I connected the result to an old wave exporter I wrote years ago. It's missing huge chunks of the fancier MIDI features, but it's reached the point where you can start recognising what song is playing!

Be warned that there's no support for instruments, just really loud square waves.



In the future I hope to let it turn MIDI files into optimised guitar tabs.

poor waif fucked around with this message at 02:07 on Mar 21, 2015

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



Sorry, parsing as in parsing midi data into sound or as in parsing sound into midi data?

I assume the former, but still, it's hella fun to get to the point where you can see or hear the difference. Implementing filters&poo poo is gonna be a blast.

poor waif
Apr 8, 2007
Kaboom

Snapchat A Titty posted:

Sorry, parsing as in parsing midi data into sound or as in parsing sound into midi data?

I assume the former, but still, it's hella fun to get to the point where you can see or hear the difference. Implementing filters&poo poo is gonna be a blast.

Parsing MIDI data into data structures that are easier to work with. The actual parsing is mostly done, but there are tons of little details to playback that are going to get really tricky. The next big step is going to be semi-realistic instruments with some form of ADSR implementation.

Carthag Tuek
Oct 15, 2005

Tider skal komme,
tider skal henrulle,
slægt skal følge slægters gang



Nice. You're over that big base functionality hurdle where now its about polish & presentation. Well done. Some projects I didn't even get there.

E: fuckin hell thats arrogant. sorry didnt mean it that way

Carthag Tuek fucked around with this message at 03:08 on Mar 21, 2015

Suspicious Dish
Sep 24, 2011

2020 is the year of linux on the desktop, bro
Fun Shoe
If you want that authentic Windows 95 feel, implement a DLS loader and read from C:/Windows/System32/drivers/gm.dls. That's what contains the instruments for Windows.

Neurion
Jun 3, 2013

The musical fruit
The more you eat
The more you hoot

Suspicious Dish posted:

If you want that authentic Windows 95 feel, implement a DLS loader and read from C:/Windows/System32/drivers/gm.dls. That's what contains the instruments for Windows.

If you want that authentic Adlib sound card feel, implement a .sf2 soundfont loader and read from this. It's an OPL-3 FM synth soundfont I found online years ago, and have been using with a Winamp plugin for nostalgic MIDI playback.

poor waif
Apr 8, 2007
Kaboom
I've added basic instruments to MIDI playback. My implementation of an instrument is basically ADSR with a couple fourier series coefficients for waveform synthesis. It seems to sort of work, but I haven't bothered designing very many instruments yet.

I'm going to look into loading SF2 files, at a first glance it seems like a proper implementation will require a far snazzier instrument implementation.

Most MIDI files seem to sort of work at the moment, but some of the more complicated ones don't sound good at all. I'm thinking they're making heavy use of controller events or pitch bends, which I haven't implemented at all yet.

take boat
Jul 8, 2006
boat: TAKEN

Azazel posted:

The game my buddy and I have been working on is officially released! So happy.



https://itunes.apple.com/us/app/dungeon-slammers-drop/id962292082?ls=1&mt=8

I played a few games of this, it was fun! Congrats on releasing.

Spatial
Nov 15, 2007

Fun with shaders.



Animated GIFs:
Pulsing with particles
Inside the singularity
Weighted with particles :eek:

Adbot
ADBOT LOVES YOU

Will Styles
Jan 19, 2005
There's a stuffed bunny on the right being pulled into that black hole :ohdear:

Looks pretty cool though.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply