Dark Bit Factory & Gravity

PROGRAMMING => General coding questions => Topic started by: Uhfgood on February 12, 2013

Title: Getting started?
Post by: Uhfgood on February 12, 2013
My name is Keith (as I said in the welcome thread), and I'm essentially new to the scene. 

I've been programming for years but want to get into demo coding (specifically graphics coding at the pixel level).  I'm running windows right now and am wondering if anyone could point me in the direction of a decent language/api/library on where to start? 

I'm making games in Love2d using Lua, but I'm comfortable in c/c++/c#, and a few other things.  I was thinking of using love2d, but it's not really built for demo stuff (that is done by software) and I'm into the old school effect stuff.  I kind of need to start from scratch, so it's like putting a pixel on the screen etc.  (I can pick up most anything in fairly short order though).

I basically want to do stuff like starfields, dot tunnels, plasmas, fire, interference, coppers, etc...  Write my own blitters, scalars and the like.  So any help is appreciated.

Thanks,
Uhfgood
Title: Re: Getting started?
Post by: benny! on February 12, 2013
Hi Keith,

thanks for your introduction.

I think it is just perfect if you are comfortable using c/c++/c#. Although it might be a bit outdated - did you already
had a look into SDL. I used to read a good tutorial by sol (http://sol.gfxile.net/gp/index.html) who explains the
basic and even talks about some demoscene effects. Maybe it is worth a look.

In addition, more modern libraries like openFrameworks (http://www.openframeworks.cc/) or Cinder (http://libcinder.org/) also exists focussing on creative coding.

Keep us informed about your progress.

Best,
benny!
Title: Re: Getting started?
Post by: Canopy on February 12, 2013
Hi Keith!

Does DirectDraw still exist? I used it a very long time ago and it simply mapped a framebuffer direct into userspace.

Back then you had to write your own things like line routines but i'm sure some nice libraries might now exist.


I have plans to do similar things in C/C++ and OpenGL for various, slightly masochistic reasons. The main driving factor is cross-platform capabilities as I hope to run my code on some more tablets in the future. (and they mostly use OpenGL ES, and GL ES can be achieved on MS Surface via the linked in ANGLE library)


Canopy.

Title: Re: Getting started?
Post by: Kirl on February 12, 2013
If you want to start playing with pixels right away, meaby the tinyC5 javascript library by our very own benny is a good option. All you need is a text editor and a browser. There is a lot of info about it on the forums, as well as a ready to go html/js template with helpful comments on where to put your code.

TinyC5 thread (http://www.dbfinteractive.com/forum/index.php?topic=5397.0)

Good luck! :)
Title: Re: Getting started?
Post by: benny! on February 12, 2013
...

TinyC5 thread (http://www.dbfinteractive.com/forum/index.php?topic=5397.0)

Good luck! :)

 ;)
Title: Re: Getting started?
Post by: combatking0 on February 12, 2013
JavaScript is an excellent starting programming language for those who don't want to commit cash to a more complicated system before they've developed a programming style and a general understanding of programming techniques.
Title: Re: Getting started?
Post by: Uhfgood on February 12, 2013
Thanks for the recommendations, I'm looking at TinyC5 even as we speak (or type).  I have looked at js before and I'm already versed in programming in general, so it shouldn't be that hard to pick up.  We'll see what I can do in a bit.

I did look at sdl before, and have talked to Sol (he's usually in the #ludumdare irc channel on the afternet network irc.afternet.org).  So sdl might be a good choice in the near future.
Title: Re: Getting started?
Post by: benny! on February 12, 2013
Speaking of javascript and demos - you might also want to have a look at the codef (http://codef.santo.fr/) framework. Whereas TinyC5 is primararily for pixel manipulation - codef offers a range of standard oldschool demo-fx "out of the box".
Title: Re: Getting started?
Post by: Uhfgood on February 13, 2013
As much as I appreciate the recommendations, and I did actually ask for them, I'm starting to lean back toward love2d, specifically lua, using love to actually get it to the screen.

I've been told it will be fairly slow, might be a good chance to see if I can pull out something decent.  Although I'm still just learning.
Title: Re: Getting started?
Post by: Canopy on February 13, 2013
ah yeah probably because it is interpretted. 

what about blitz basic? I've not used it but it seems like a lot of people on here have used it in the past. Other posts suggset its performance may not be all that either.

the thing is, IMO - you will hit a frustration with performance in the end.

this looks quite cool http://basic4gl.wikispaces.com/2D+Drawing+in+OpenGL     ( http://basic4gl.wikispaces.com/  )



its a shame that once you step outside that kind of environment it is a bit of a pain that there is often so much set up involved in having a a simple environment to do your effects in. having to learn and build a library of routines to reuse each time  before you even get you going.


Title: Re: Getting started?
Post by: Uhfgood on April 21, 2013
Been a little while since I posted.  Been kind of busy.

I'm wondering if programming for ms-dos and using dosbox to run demos is viable?

It would make some decent challenge, and then I could use a few things I might have learned years ago.