Piko3D

Basic OpenAL Implementation

January 3rd, 2013

Hey everyone!

[youtube_sc url=Lsy1VztJLBI width=240]

No we’re not dead. Just didn’t have a lot to show you ๐Ÿ˜‰
But here’s some new stuff! And more is on the way!

I’ve been doing some debugging recently, started working on our own file format, but most of all,
debugging is a lot better now! I wrote a logger, and a better exception handler, and error messages.
Piko3D now writes logs, and it no longer crashes upon error ๐Ÿ˜›

In the mean time, Paramike finished the first part of our OpenAL implementation! And it’s awesome ๐Ÿ˜‰
Everything you see in the video is done in Angelscript. We added things like a camera “Look at” option, and “join”, which
syncs 2 object positions ๐Ÿ™‚ Useful for attaching sound sources to objects ๐Ÿ™‚

In the mean time! Micron has been working on a debug renderer, so that he could actually see what he was doing while implementing bone animation, and I have to say it is coming along nicely! We’ll show you more next time!

Sorry for the delays guys. I hope we can do more updates soon. If I can keep myself away from star/mine craft for long enough ๐Ÿ˜›
But things are looking good!

For now! Enjoy our OpenAL: Doppler effect video!

Talk to you later!

Wracky

Deferred Lighting: Point- and Spotlights

August 2nd, 2012

Hey everyone!

[youtube_sc url=PM6y-Jt617k width=240]

Time for another update!

I’ve implemented spotlights, and optimized the light rendering a bit. Point- and spotlights now have proper falloff, and can be animated.
We’ve put a video together for thisone, showing you the state of our renderer up until now.
It is possible to set the “shininess” for separate object, so you might notice our little spaceship to be a bit more shiny than the rest
of the scene.

This is all just simple test models and geometry I had laying around. Perhaps for our next video, we’ll have some more eye candy models,
and I hope proper textures, to show you. ๐Ÿ˜‰
Next up: Shadows and Transparencies!

Until next time!
Wracky.

P.S. Oh yeah, and we’re all kinda hooked on minecraft.. so progress is slow atm ๐Ÿ˜›

First steps in Deferred lighting!

April 24th, 2012

Hey everyone!

deferred lighting

Deferred lighting with position, normal and diffuse buffer.

Got some news for ya!
We’re still hard at work, and I actually have some screenshots to post! Hurray!ย The new renderer is starting to work nicely, and we actually have a half decent structure for drawing stuff now!

Aside from that, Our OpenAL implementation is almost finished, we have support for bones, just no animations yet ๐Ÿ˜‰ย So we’re working on animations and I believe Micron is looking into Inverse Kinematics, so should be exciting.

Our deferred renderer is currently in the stage of just simple lights. No transparencies yet, and no shadows or any post filter effects. Post filtering should be fairly simple to add to it later though.

Well that’s it for now! Hope you enjoy our new screenshots ๐Ÿ˜‰

Best regards,

Wracky.

 

Pixel shaders!

January 23rd, 2012

This movie requires Flash Player 9

Shaders baby!

Hey everyone!

Here’s another progress report!
Got some basic shaders to work! Actually the shaders weren’t that much work,ย But Piko3D now has a proper resource management system around them too!
I’m currently working on an OpenGL renderer, but if we ever build a DirectX one too, it should be possible to switch between OpenGL and DirectX in runtime!

Anywayz, next up for me is testing, and pushing parameters to the shaders. I’m currently working in OpenGL 3 which allows me to phase out static functions gradually. This means that I can set up a static function pipeline, and than swap out the shader pipeline bit by bit, which makes testing a breeze ๐Ÿ™‚ When everything is done, I’ll switch to OpenGL 4.2 entirely.

The little video you see here is basically a fragment shader “Hello World” that was made a bit fancier ๐Ÿ˜‰ It renders BRICKS!

Anywayz, Talk to you later!

Wracky.

Progress! Rendering and Thread safety.

December 28th, 2011

Hey people!

Here’s a small development update!
So the holidays gave us some good time to work on Piko3D, and we thoroughly enjoyed it ๐Ÿ˜€ Even though Star Wars: The Old Republic is out now, and I absolutely love the game, we managed to make some good progress ๐Ÿ™‚

Paramike is working on threading. Piko3D already supports some multi-threading. We have a thread pool, and the scene and physics are done multi-threaded, but there is more to be done! The threadpool with which we limit the amount of threads started on a PC, is now LOCK FREE! and runs a LOT faster. Alongside that, Paramike is working on a thread-safe memory pool, which should improve Piko3D’s performance quite a bit (not that it’s slow now, just saying).

I have started restructuring part of the engine to make a basis for our new OpenGL 4.1/4.2 Renderer, and I’m making good progress! Window and camera updates are now properly taken care of, and as per SDL 1.3, we support MULTIPLE WINDOWS! We’ll probably never use it, but hey ๐Ÿ˜‰
This also means that script determines what events are handled at what window, and that every window is updated separately.

Here’s a little screenshot for your enjoyment ๐Ÿ˜‰

Till next time!

Wracky.

Bindpose FTW

October 13th, 2011
MD5 Bind pose

bindpose

So, after some time I finally got an MD5 model loader and a skeleton ๐Ÿ™‚ ย Currently it’s only a

bindpose, there is noย vertex blending or animation for that matter. Up next, animation!! Which is actually what I started out doing ๐Ÿ˜‰

enjoy!

Micron

 

 

[Don’t look at that model or the lighting… we’re still working on the renderer ๐Ÿ˜› – Wracky]

 

 

Keys, Bones and Screens.

July 7th, 2011

Hey everyone!

Yep! we’ve been out of it for a couple of weeks.. I just bought a new house and such! lots to do!
Well progress is kinda slow in general I guess ๐Ÿ™‚ But we’re still having fun working on Piko3D so when we get the chance,
we get together have a good time coding!

Last week, Paramike fixed some script bindings and tried get the old screen and camera classes going in script. We’re switching most of the control structure to angel script now, and some of the bindings are still a bit wonky/experimental!

This week, Micron and me had a few beers and did some coding on input handling and bone animation. There are some architectural issues that Micron is tackling now, and I added about 250 key-code enums to script! Soon we’ll be able to register and handle key bindings and mouse movements etc. Piko3D uses most of the messages from SDL 1.3 so far (Kudos to the guys from SDL for their continued work on SDL 1.3!)

I promised you guys a little guide on Angelscript right? Well I’m still up to my ass in boxes right now, and working on the couch on my laptop… I’ll get to it once I got my computer set up again ๐Ÿ˜€ We’re working on the house, and I can tell you, since yesterday there IS light and electricity in the “office”! I still have to get a LAN-cable up there, and the floor needs to be put in, but hey! We’re getting somewhere! ๐Ÿ˜‰

Well that’s it for now!

Talk to ya later!
Wracky.

Script bindings done!

April 24th, 2011

Hey everyone!

The Revision demo party has proven to be a greatย opportunityย to get some coding done!
I’ve basically finished the script bindings for the existing classes!

Aside from that I worked on delegates and a timer class for script.
It is now possible to create timers in angelscript, and attach delegates to them that call script functions when the timer fires.
The timers can be set to loop, or can be stopped, paused or resumed. This makes the timers very useful for timing periodic or occasional events!

The delegates are used to attach event handlers to the timers, but can be used to attach event handlers to anything that is observable, like objects, resources, or entities. This means that an object can be monitored for instance, and a script function can be called either when it moves, or when it is destroyed.
Delegates can store arguments that can be passed to a script function when it fires for easy customization ย  Delegates will also play a major part in the input handling/notification system, as they can be used by the control class internally to bind script functions to key presses etc.

Neat! ๐Ÿ˜€

Well that’s it for now.
I think I’ve made some good progress.
Going to sleep now ๐Ÿ˜‰

Till next time !

Wracky.

Piko3D at Revision demo party :P

April 22nd, 2011

Hey people!

I’m currently at the Revision demo party (http://www.revision-party.net/)!
Sadly, we don’t have anything to show yet.. We want a decent renderer before we attempt a demo ;P

But lots of opportunity and time to code on Piko3D and watch awesome demos of other people. Perhaps to get us inspired ๐Ÿ˜›

Cya!

Wracky.

Delays due to Dragonage 2! :P

March 31st, 2011

Hey peeps! Just a heads up!
You know making script bindings, is kinda boring, which brings me toย giving you this tip: If you want to create script bindings for your application, START EARLY! ย Creating a script binding in angelscript for a function or a member is really not a lot of work. So everytime you add a class or a function, just add the script binding, and you’re done!

If you do it afterwards, it can be a long and tedious task… well really only very long and tedious because companies keep making awesome games that I find more interesting than script bindings at the moment ๐Ÿ˜› Like dragonage 2! oh and aside from that I’m also playing starcraft 2 every now and again, and I’ve just finished Gray Matter. If you are a fan of adventure games, go buy and go play! It’s one of the best I’ve seen in a LONG time.

I’m now completing resource bindings, so models, meshes, textures, materials and such. And because Piko3D uses smart pointers internally, I have to make some wrapper functions for these babies in some cases. We did something pretty awesome though. Piko3D’s smartpointers now use a generic data/refcounting structure, that we can bind directly in angelscript! so passing object handles from script to the engine and back can be done fairly safely, since ownership is always accounted for! And the fun part is that the smartpointers can still work with unreffed classes and structures to, so it remains generic! AWESOME! ๐Ÿ˜€ ย (Oh and thank you Andreas (angelcode) for Autohandles ;-), they are very nice for certain cases)

Well! That’s it for now!

Keep ya posted.

Wracky

P.S. Yes that Angelscript guide is coming… promise. ย (but first! portal 2! woooey!)

« Newer PostsOlder Posts »

Creative Commons License
This work by piko3d.net is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Netherlands License
Powered by WordPress