Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411490 Posts in 69371 Topics- by 58428 Members - Latest Member: shelton786

April 24, 2024, 08:33:54 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)What are you programming RIGHT NOW?
Pages: 1 ... 3 4 [5] 6 7 ... 71
Print
Author Topic: What are you programming RIGHT NOW?  (Read 210093 times)
Evan Balster
Level 10
*****


I live in this head.


View Profile WWW
« Reply #80 on: February 06, 2011, 06:32:07 AM »

I spent like two hours fooling with my low-level audio system.  I used a lazy bit of music made by a talented friend as material while I coded out a bunch of "wonder what this would do" processing effects.  I have almost zero hands-on experience with DSP, and this is quite fun.

I made, in order:

- Accidentally did bit shifting on the signed 16-bit samples while misinterpreting them as unsigned; crazy awesome glitched audio ensued

- Echo (ultra simple, with a ringbuffer)

- Reverse chunks (kept the song surprisingly intact while making the drums sound whooshy and cool)

- Quantized multiplicative echo (essentially loud sounds echo as noisy corruptions, sort of a glitch art sound)

- An attempt at a "difference accentuator" that managed to create a frequency-ramping effect; effectively a poor lowpass highpass filter:

Code:
Sint16 *dat16 = (Sint16*) stream, *dat16e = dat16 + (len>>1);
static Sint16 buf[4];
while (dat16 != dat16e)
{
buf[0] = dat16[0]; dat16[0] -= buf[2];
buf[1] = dat16[1]; dat16[1] -= buf[3];
buf[2] = dat16[2]; dat16[2] -= buf[0];
buf[3] = dat16[3]; dat16[3] -= buf[1];
dat16 += 4;
}

- Wired the combined left and right signals, downshifted, as frequency modulation ("FM") for a sine wave tone (took some work to get it right)

- Made the FM system render to the left and right ears with a 33/32 frequency difference to create a binaural beat frequency.  (It's an effect you can only hear when both earbuds are in; it results from some magic part of the brain that tracks wave phasing and usually figures into horizontal spatialization*)

- Altered the FM setup so the absolute sample values were positive and negative FM respectively for the right and left ears, thus causing them to govern the beat frequency, which shifted in strange ways.

(I listened to this last one for a while while staring at some visual glitch art I programmed last weekend, things got a little surreal and I grew rather lucidly aware of everything around me)

- Combined chunk reversal with echo.  Interesting.



ANYWAY.  Point is, this is interesting and fun.  You should try it.


* While I have no DSP programming experience, I work in research and implement software that uses sophisticated HRTF algorithms to render 3D audio through stereo 'phones.  So, terminology.  Sorry.  :\
Logged

Creativity births expression.  Curiosity births exploration.
Our work is as soil to these seeds; our art is what grows from them...


Wreath, SoundSelf, Infinite Blank, Cave Story+, <plaid/audio>
st33d
Guest
« Reply #81 on: February 06, 2011, 07:01:17 AM »

Got down to the final level to test - cpuBreaker

Bam

Several bugs. All fairly solvable apart from one which is caused by the sound manager. Going to have to redesign the sound manager for like the fifth time and do it without using any hacks like I did before.
Logged
zath
Level 0
**



View Profile
« Reply #82 on: February 06, 2011, 05:04:19 PM »

I'm rewriting gfx extractor from The Settlers 1. Some progress, at least. I am still missing few sprites (like shadows of buildings and trees) - some sprites still looks like random dots, but everything else seems to be ok.
Logged

DanDanger
Level 0
**



View Profile
« Reply #83 on: February 07, 2011, 05:53:00 AM »

Programming some dynamite which chases a penguin  Smiley

Code:
uint32 cDynamite::stateChasingPenguin( eStateAction action, int param )
{
switch ( action )
{
case ACTION_START:
{
runSpeed = 5.0f;
bRunning = false;
pGfxController->playAnimation("jump",false);
}
break;

case ACTION_UPDATE:
{
// Turn to face penguin
float targetDirection = (getGame()->getPenguin()->getPosition()-getPosition()).getAngle()+cePIf;
float currentDirection = getRotation();

if ( !bRunning )
{
// Turn quickly
currentDirection += ceRadRelative(targetDirection-currentDirection)*0.2f;
getGameObj()->setRotation(currentDirection);

if ( !pGfxController->isAnimating() )
{
bRunning = true;
pGfxController->playAnimation("walk",true);

}
}
else
{
pGfxController->setAnimationSpeed(runSpeed);

// Turn slowly
currentDirection += ceRadRelative(targetDirection-currentDirection)*0.1f;
getGameObj()->setRotation(currentDirection);

// Move toward penguin
runSpeed = ceMin(10.0f,runSpeed+0.1f);
cVec2f targetVel(0.0f,runSpeed);
targetVel.rotate(currentDirection);
cVec2f vel = getRigidBodyController()->getLinearVelocity();
cVec2f deltaVel = (targetVel-vel);
getRigidBodyController()->addForceWorld(getPosition(),deltaVel);
}
}
break;

case ACTION_DRAW:
{
}
break;

case ACTION_END:
{
}
break;

}
return 0;
}
Logged
minasss
Level 0
***



View Profile WWW
« Reply #84 on: February 08, 2011, 07:57:54 AM »

I'm re-writing the core of this (www.ofootball.eu (italian), www.ofootball.net(english)) web game

starting from very ugly VB.NET code (not mine luckily) to python, with unit test for nearly every single function/method Smiley

Logged
Danboe
Level 0
*


View Profile
« Reply #85 on: February 08, 2011, 12:37:07 PM »

Working on a metroid-ish map system for my game, going pretty well.  Smiley
Logged
SFBTom
Level 1
*



View Profile WWW
« Reply #86 on: February 09, 2011, 12:19:24 PM »

A character animation system for my iPhone game, built on top of cocos2d. Allows for eyes and mouth to be animated separately to the body, but always be in the right place.

Never realised just how easy that sort of thing is in Flash until I tried to implement it in another language...
Logged

Glaiel-Gamer
Guest
« Reply #87 on: February 09, 2011, 12:35:09 PM »

Never realised just how easy that sort of thing is in Flash until I tried to implement it in another language...

haha ya. My solution for that in closure is animations are stored with a list of generic "hotspots" that are manually placed in the editor, then the code can reference that hotspot to align multiple sprites together. Hotspots technically also hold a vector orientation, but I don't use it and you can't edit it in the editor.


For future projects I'm not using my current shit animation system. I wrote some code that can parse and render swf objects and all their fun hierarchy stuff and its much easier to work with so chances are i'll probably use a variation of that if my next project remains 2D.
Logged
SFBTom
Level 1
*



View Profile WWW
« Reply #88 on: February 09, 2011, 12:47:15 PM »

For future projects I'm not using my current shit animation system. I wrote some code that can parse and render swf objects and all their fun hierarchy stuff and its much easier to work with so chances are i'll probably use a variation of that if my next project remains 2D.

I think I saw your tests, with the swf rendering at ridiculous fps? That's pretty much the dream, but I don't think the iPhone would be very good at it, as is evidenced by the awful slowdown in apps made in Flash CS5 and exported for iPhone Sad

Did you get the individual display objects accessible from the code, or was it just rendering the timelines?
Logged

Glaiel-Gamer
Guest
« Reply #89 on: February 09, 2011, 01:00:19 PM »

Did you get the individual display objects accessible from the code, or was it just rendering the timelines?

I did, you could create a SWF, then do SWF.get("linkageclass") to get the MovieClip.

I'd rewrite the whole thing if I ever decided to use it, the code is a mess and there are memory leaks galore because it was more of an initial proof-of-concept kinda thing than an actual tool. It would run a lot better than adobe's thing I believe. The adobe exporter for iphone is still a software renderer and forced to comply to every aspect of the flash format. I completely ignored gradients, line styles, bitmap fills, shape tweens, and other minor stuff, and also all the geometry was stored in vertex buffers on the gpu for fast rendering (I didn't get around to doing cache as bitmap because at the time my frame buffer class was so tied into closure's source code i'd have to copy over like 80 files to use it).

You can hit me up on msn if you wanna talk about it more, I believe you have my contact info.
Logged
Glaiel-Gamer
Guest
« Reply #90 on: February 09, 2011, 05:02:57 PM »

anyway on the subject of "what i'm doing right now" is i'm adding "sticky note" functionality into my level editor. I still have like 70 good levels to make before the game can be considered done (which means making 200+ levels total to arrive at those 70 good ones), which also means Jon has to do art for 70 more levels. Sticky notes will let me communicate messages to him about art clues and whatnot without me having to interrupt him all the time, and will also let me communicate notes to myself when I'm revising levels in the future.
Logged
Fallsburg
Level 10
*****


Fear the CircleCat


View Profile
« Reply #91 on: February 09, 2011, 06:37:48 PM »

Well, not right now, but today, while I was at work, I coded up a bejeweled clone in Matlab.  I was so freaking bored, but that definitely helped speed up my afternoon.
Logged
Wolfos
Level 0
*


View Profile
« Reply #92 on: February 11, 2011, 10:54:43 AM »

Pretty much a beginner at C++ I'm currently building an engine in SDL, so I can make some games with it later.
Logged
Kekskiller
Guest
« Reply #93 on: February 11, 2011, 11:27:52 AM »

Making a small bytecode that you can execute during runtime or export it to C. Should take a minimum of effort.
« Last Edit: February 11, 2011, 04:08:20 PM by Kekskiller » Logged
Nix
Guest
« Reply #94 on: February 11, 2011, 11:41:34 AM »

Pretty much a beginner at C++ I'm currently building an engine in SDL, so I can make some games with it later.

Skip the engine and just make games with SDL.
Logged
SplinterOfChaos
Level 3
***



View Profile
« Reply #95 on: February 11, 2011, 12:42:38 PM »

Pretty much a beginner at C++ I'm currently building an engine in SDL, so I can make some games with it later.

Skip the engine and just make games with SDL.

Write games, not engines.

I can't count the number of times i've posted this link. I've thought about making an engine before, but i always find that it's wrong to think on such a high level of abstraction without having the low-level code already written. Making an engine with no game is like learning to count numbers and still not knowing how many apples you have.
« Last Edit: February 11, 2011, 12:48:36 PM by SplinterOfChaos » Logged

st33d
Guest
« Reply #96 on: February 11, 2011, 01:41:34 PM »

There was a great post by blprnt I read the other day about Angry Birds. How it basically is Box 2D, and not really much more.

http://blog.blprnt.com/blog/blprnt/angry-birds-box2d-an-opensource-holiday-wish

In fact a lot of Box 2D games aren't much removed from Box 2D. The less they are removed, the more popular they are.

I've done several Box 2D based engines and the most popular was one where you destroy buildings. The only thing I added to the equation was to break up the shapes into squares and use a floodfill to break them apart.

People pat me on the back for it and I'm thinking, "you should thank Boris or Erin." We certainly credit Box 2D in our games that use it (unlike Angry Birds). But I certainly don't feel proud of what I've made or feel excited to return to the concept. It's just work.

Sometimes a game is the engine. And can do very well off of it. That's not to say it's a good thing.
Logged
BorisTheBrave
Level 10
*****


View Profile WWW
« Reply #97 on: February 11, 2011, 03:07:34 PM »

Agreed. I am totally fed up with the glut of physics games that offer very little else. Imagine how it would be if I'd actually made the flash version easy to use...

I had actually figured that people would get fed up with it, and move on to the next insipid genre (like hidden object games, tower defenses). But nope.
Logged
Nix
Guest
« Reply #98 on: February 11, 2011, 04:06:54 PM »

I just decided not to waste my time writing a triangulation function from scratch (which I would generally do) because I'm trying really hard to stick with the deadlines I set for my team (with Teambox, which is really great by the way). Next up is getting a Gaussian filter working in HLSL. I think I'm just going to plug-n-play this one as well with sample code from Microsoft's site. I need to stop doing everything from scratch and focus my time on doing awesome things!
Logged
Glaiel-Gamer
Guest
« Reply #99 on: February 11, 2011, 04:10:25 PM »

Don't discourage people from writing engines, it can be pretty fun and once in a while you have a concept that would be a PAIN IN THE ASS to implement in an existing engine/framework (i.e.: Closure).

I've listed off my reasoning why it can be good to write your own engine before so I won't do that again here. But a lot of people here seem to think that its only the ends that matter (the game) and design in a "come up with an idea, make that idea" fashion. A good portion of my ideas come from just experimenting with programming stuff (both high and low level) on previous projects and I feel like I'd lose a good portion of my inspiration if there was "less" to program.
Logged
Pages: 1 ... 3 4 [5] 6 7 ... 71
Print
Jump to:  

Theme orange-lt created by panic