Author Topic: Looking for an assignment leader for a highschool project  (Read 3330 times)

0 Members and 1 Guest are viewing this topic.

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
Hey guys (and gals) of dbf!
I've been lurking on these forums from time to time and now's come the time to finally register and post. Why? Because I need help :)
For the last year of my highschool, everybody (in my class) is supposed to take up a project to present at the end of the schoolyear (the next one, not the one that ends in a month, obviously). The topic of the project is up to us (but has to be at least slightly meaningful and programming-related), and so I decided to finally do what I've been planning to do for the past two years - create a demo! I'm not aiming for anything compo-grade, I just want to get into the whole demoscene thing not only as a viewer and a fan, but also as an active contributor. The problem with a task like this is, that there is nobody at our school with decent knowledge of demos and so, if I wanted to be able to choose this as my assignment, I would have to find an external person to "lead" the project - basically guide me through the whole process, review my work, help me when I get struck and in the end write a review of my work. I do, of course, have some programming experience, the only unpleasant thing is that I've never really worked with 3D graphics on the "no engine to do stuff for me" level before (which WILL be a problem, but I'm confident I'll overcome it soon).
In short: I'm not asking you to "teach me to make a demo". I'm looking for somebody to help me learn it myself.
So is there anybody willing to take up the challenge? :)

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
I'm not sure if I can completely fulfill your request, but if you have none to little programming experience, I can guide you in the basics.

There are better coding languages out there, but I'd recommend starting with JavaScript - it's supported across multiple platforms as long as they have a web browser, so as long as you have some web storage (or you can "borrow" a little from somebody else to get you started) you can show off your creations on any device, from windows to linux, from a tablet to a desktop computer.

If you want, I can guide you first in the basics of programming, then 2D graphics, then simple 3D if you want to go that far.

So my first question is, have you ever tried programming before?
You are our 9001st visitor.
Challenge Trophies Won:

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
I forgot to mention that, so yes, I have tried programming before (I have a job as a programmer afterall), mostly in C#, but I also have experience with Python, C, ASM, and even JS.
Platform-wise I'd prefer Windows - I'm not much of a Linux guy and I'm not aiming for multiplatformness either, but that might change if I see that some way is better than the others.

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
I read the word "highschool" in your original post, so I just had to check. And we can skip the basics.

Specifically, what experience do you have in JavaScript? If you haven't used it with the HTML Canvas element, we could start there if you want.
You are our 9001st visitor.
Challenge Trophies Won:

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
My experience with JS can be summarised as basic scripts, nothing advanced. I know the theory, but I've never needed it for anything (I don't do webdesign).
I have done one bigger project with the canvas element (browser-based ASCII game) with TypeScript (microsoft's objective JS), but it's pretty similar there.
I guess that for learning algorithms and getting the mindset, it doesn't really matter which language I choose, so I could go with JS just fine.
« Last Edit: May 30, 2016 by eldan »

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
Perfect, now we need a target to work towards. Have you seen a 2D effect on these forums you would like to try to recreate?
You are our 9001st visitor.
Challenge Trophies Won:

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
The thing I'm aiming to do in the end is a practically infinite audiovisual presentation (demo) with both graphics and audio being procedurally generated based on pseudorandomness.
Having a number of "scenes" and algorithms/functions which would then be able to be mixed and matched, creating something different every time.
Stop me if I'm aiming for something impossible, but from what I've seen so far this seems plausible, if a little complicated. In the optimal case I'd like to do the visuals as 3D, but given how complicated it is, I might stick with 2D in the end.
Procedural generation for music is a thing I could manage on my own, I have some experience in the field. The visual side I'm aiming to learn here.

As for the effect - I don't know, pick something you think would be appropriate for me :)

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
Well I can't generate audio in JavaScript, but we could take an existing MP3 or OGG file and create a synched graphical effect to go with it.

Using that as a stepping stone, you could port it to another language when we're finished; a language capable of generating audio and graphics, so you can complete the desired effect. You may need someone better suited to the language than I am, but I'll hopefully be able to give you a good start.

My suggestion for a first audio / visual synched demo would be a text scroller. We could make it flash or expand, depending on certain qualities of the audio, such as the overall volume or the volume at certain sections of the frequency spectrum of the audio.

If you have a music track you would like to use, I'll dig out the audio spectrum analyser program I use. It's sat on my HDD somewhere, I just need to find it.
You are our 9001st visitor.
Challenge Trophies Won:

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
Sorry for not replying earlier, I got work and kinda forgot...
That's a good idea, let's do it. I don't care about what audio I use atm, so just pick something...

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
OK, I'll pick something that's not to annoying. How about the Underworld music from Super Mario Bros? It's short and easy to analyse. We can change it for something more complex later.
« Last Edit: June 06, 2016 by combatking0 »
You are our 9001st visitor.
Challenge Trophies Won:

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
I found the MP3 to Array converter: http://www.marmalademedia.com.au/download/index.html

I'll play around with it until I get a useful array. Then we can get started with the programming.
You are our 9001st visitor.
Challenge Trophies Won:

Offline eldan

  • ZX 81
  • *
  • Posts: 6
  • Karma: 0
    • View Profile
Ping. Do you have the array?

Offline combatking0

  • JavaScript lives!
  • Senior Member
  • DBF Aficionado
  • ********
  • Posts: 4569
  • Karma: 235
  • Retroman!
    • View Profile
    • Combat King's Barcode Battler Home
Sorry, it was a crazy weekend. I was building a foundation for a graphic equalizer to test the array, but I didn't get that far yet.

Here's the code, with the music and the array (attached)
You are our 9001st visitor.
Challenge Trophies Won: