Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

Ian Ross has just released a book on Anim8or. It's perect for a beginner and a good reference for experienced users. It contains detailed chapters on every aspect, with many examples. Get your own copy here: "Anim8or Tutorial Book"

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - cooldude234

Pages: 1 ... 4 5 [6] 7 8 ... 61
76
Been focusing heavily on the sound part of the engine the past week and I finally got a high quality sample rate conversion working on the fly.
I'm having it set up by default to re-sample any sounds loaded into the engine to be the same with what the system is playing back audio on.

Because if you run audio that was recorded at 96000 samples per second and you try playing it back at the more standard 44100 it will sound very deep and low tone; and when you do the opposite, playing audio from a low sample rate (like 22050) to a higher sample rate it would sound high pitched and be played back very fast (like the chipmunks).

So this is where re-sampling comes in handy. If you are running your audio device at a higher or lower sample-rate the engine would re-sample the audio to match the correct sample-rate to make sure things sound correct. This pretty much involves going through every single audio sample there is and finding where the new sample would lie (time wise) one the original and interpolating between the original samples to get the new one. Right now I just have a linear interpolation implemented for this job but I will hopefully add support for other forms of interpolation (for even more high quality).

I posted a screenshot with some debug info on it to help illustrate how efficient this is for on the fly conversion.
Heldon's song, Perspective II is about a 3 min song but has 48000 samples per-second with a total of 9387520 samples.
Converting all that to 44100 to about 0.639272 seconds. Considering this really only needs to happen once per audio file and there wouldn't be that many long audio files being loaded up at once I am extremely happy with the result; and if you look at the result for chime3, a much smaller audio file (about 10 seconds long at 96000 samples a second), you can see how feasible this would be for many small files.


Right now I have it setup like this, Sound = LoadSound (filename); PlaySound (Sound); And the engine takes care of the rest.
In the end I'm going to aim for having the user just load a sound and play it and it would work by default and then giving them the option to do all this manually for more advanced uses.

77
General Anim8or Forum / Re: Anim8or on Touchscreen Computer
« on: September 01, 2015, 09:55:13 pm »
Quote
or better yet, undock them and drag them to a second monitor in order to have a :) fullscreen modeling window.
Quote
I understand the tradeoffs between screen space and utility.

 Dockability of all bars/tools and 'especially' timetrack(s), would be Awesome! :)


Agreed! However I've seen this implemented poorly before and even negatively affecting UI when it was just static (non-moving). So just don't break the GUI when doing this (if you are, which would be awesome still) please ;)

78
A few suggestions that you probably already knew to fix.
-Lock the mouse to the center of the screen when using mouse look (this will avoid clicking off screen when using multi monitors)
-An exit button
-When camera collision is detected, it stays close to the character instead of returning back to the distance it was once at
have a dist value for storing the player's camera distance that they set with the scroll wheel, and then cast a ray from the character to that distance and then if the ray hits anything put the camera there and if not then put it at the dist value.
-mouse sensitivity

Other than that it's a great start.

P.S. that music really reminds me of tenchi or something :P

79
Lol, dylan was a jerk (I made him drown dugg ;P ).
I still have a copy of dylan 64 somewhere.
Maybe you might be able to port it to the new engine when it gets released (probably later this year).

80
The mode tabs are a very nice touch.

81
General Anim8or Forum / Re: Suggestion: default tool
« on: August 03, 2015, 09:08:48 pm »
I've never had those issues and also if you had the move tool set as the default, what would there be to move if nothing has been created (blank project).

82
Except alt to toggle arc sucks (I want it bound to a different key, and yes I am still on that).

83
I have considered using lua and even pearl but I wanted more control over the implementation on these as well as the syntax. Also by making my own scripting language and I make the C++ coding structure much similar to the rest of the engine, which in the long run is a much nicer thing.

And wow I haven't heard of anyone using Erlang for a long while :P

84
It's the scripting language I am making from the ground up based on c style syntax that utilizes the engine
(currently it doesn't have a name so I just refer it to as scripts).
This is the way I am making it so people can develop things with the engine without having the complexity of a compiler.
The reason why I need to continuously read from these is because the main loop will be handled through these; as well as other loops that a person could add if they so desired (eg A for loop).

Basically the engine has a parser which just reads the scripts top down, and certain control structures can influence and tell the parser how to read from these scripts like for example loops and if statements.

Also you can have multiple scripts and call the engine through one script to read from another.
So if you load another script through the main script....
Code: [Select]
New Script testscript = load_script(filelocation);
 
Then call it to run....
Code: [Select]
runs_script(testscript);
 
The parser will read from testscript top down until it reaches the end of said script.
From there it will continue reading from the previous script at the next line.

Please note that the syntax of these functions aren't 100% official yet, even after the initial public release it may change (a lot of things will when I get feedback, but they will change for the better (I hope ;p )).

P.S. Are you familiar with programming at all?

85
Added some more features to the scripts, and currently trying to figure out how to implement blocks and scope blocks into them.

Now this wouldn't be such a big issue if this were code that was going to be compiled. Because then I could design a compiler that would organize the code in such a way that would it would work just like normal machine code (removing blocks, replacing them with jumps, not using symbolic names for variables etc). But I have to do all this with stacks and ASCII identifiers for functions and parse it all in real time.
 :-\

However I am implementing a preparer optimizer that will try to optimize the scripts to make it faster to read for the real time parser I could then at that point fix a lot of the difficult stuff but it wouldn't solve everything.
I'll post more once I refine what I have written down on scrap paper.

Hopefully this won't take too long to get done.

86
The Original cre8or loaded the an8 format and used model and figure data which had scripts tied to them. It also used scene data to place said objects and figures in the initial scene for the engine.

How I plan on implementing the an8 file format is similar. I wont be directly tying scripts to the models (as it makes for reuse of models a real big pain). The scripts however will be able to call the engine to render any model loaded up from the an8 file. So a single script could render multiple models. Or you could have a script not render any model or object. This is a big contrast to what it was back in the old cre8or which you had to have a model or object in the scene for that particular script for that model to work.
Also I will possibly use anim8or scenes for something similar to a level editor In which it generates code based on the scene. EG you place a terrain model and a house model at different locations. Cre8or would then interpret this and insert code for those locations and when to draw them.
Although how I implement scenes will be heavily dependent on how the rest of the engine structure turns out.

I do plan on having functions that go around the other way instead of the engine reading stuff from anim8or, the engine will be able to output anim8or files that could then be read back into anim8or.
The original cre8or had something like this in which you could record the physics of your game and it would that segment as an anim8or scene (animating the things that were affected by the physics in game).
One thing I do plan on doing is having skeletal animation and physics that could be recorded and sent back to anim8or (like ragdolls).

87
Simple answer, Yes!

I assume you are not aware of the original cre8or.
It was an application that utilized the kjx engine and anim8or to make games. But since it's unfortunate end I have decided to restart the project using my own engine and programing everything from scratch.
I kinda hijacked these forums as it still is anim8or related-ish (as it does utilize anim8or)and I do not have anywhere else to post at the moment (am getting a site, but having troubles setting up forum stuff).

And as you can tell by the last few post I am currently working on GLSL support and trying to work out some bugs with that (things like max uniform arrays, gah those stupid max uniform limits are really getting to me ):< ).

88
Having some fun with glsl making a cheap volumetric fog.
*sigh* I should get back to the real work now.

Edit: that last one I was just srewing around with values and got that :P

89
took a break from memory management stuff to try and fix the normals.
I am 99 percent sure my obj loader needs to be fixed and for sure optimized so I might just go ahead and implement the parser for the anim8or files.
But during that I worked out multiple lights and added attenuation to them.
So yea any excuse for a screenshot :P

90
aptly enough for someone with a fish bowl as their avatar, you seem to have invented a virtual fisheye!  8)

LOL, very much indeed!

Pages: 1 ... 4 5 [6] 7 8 ... 61