ID:1390743
 
As seen in the "Breaking in animate()" thread, here's my current little obsession:



I split this off into its own discussion because I didn't want to keep flooding that other thread with my constant updates, but I want to discuss this little creation further, and get some input and suggestions.

The .gif in this post is the current "default" look. the appearance of the "BY ND" text is currently triggered by a verb (I will likely make it automatic on a timer for the released demo).

How the text appears will also have several options. I'm going to set up other transitions (instead of this retro-looking trails effect, I may have options to do just a simple fade-in, or give them a spin as they appear, etc.) The burst of particles will also be subject to control.

http://files.byondhome.com/SuperSaiyanGokuX/atom10.gif

Pay attention to the world in the center of the atom (incidentally, within my project, that little world is the player's mob; I can walk that globe outside of the atom if I want...lol)

These are just two examples of some little animations that can be applied to the globe, courtesy of Lummox's two favorite example snippets...lol (currently triggered by verbs, but will likely also move onto a timer) These will also be optional, and I hope to add in several more (with the ability to chain them?)

http://files.byondhome.com/SuperSaiyanGokuX/atom11.gif

OOOOHH! Pretty colors! The color changes in this .gif are (once again) triggered by a verb I set up to test, and it just sets random values, but these values will be tied to configurable lower and upper bounds.

For instance, the particles (I call them "stars" in my code) are created with

color=rgb(rand(particleredmin,particleredmax),rand(particlegreenmin,particlegreenmax),rand(particlebluemin,particlebluemax))

(variable names subject to change...lol)

In the "default" settings, these values are set to 100,250; 100,250; and 250,250. This is what gives the particles in my original version their bias towards blue hues (since the blue value will always be 250, regardless of the other two values).

A change in the config.dm file to their values will allow the end-user to set their own custom ranges (for instance, switch to a red bias, or even a full-red, by setting the green and blue limits to 0).

http://files.byondhome.com/SuperSaiyanGokuX/atom12.gif

This one shows off the modifiers for electron speed and scaling factor. The electrons select a step_size from a range of 10-13, but the code includes a modifier, so you can tweak them further by that factor.

For scaling, the default is to scale them up by 2x in the foreground, and down by 1/2 in the back. This modifier changes that factor (3x and 1/3, 5x and 1/5, etc.)

And finally:

http://files.byondhome.com/SuperSaiyanGokuX/atom13.gif

:)

So yeah, some more tweaks, improvements, and option additions and then making it presentable as a demo, and I'll put this up for public use.

In the meantime, any feedback? Especially in terms of suggested options or effects you'd like to see included?
My impression was that it was okay-ish. There wasn't enough Lige to keep me interested.

However, I noticed you used the word "bias" a couple of times which improved my impression as I can relate to such a word. #bias

Good job.
Woah, that was amazing to see, SSGX. Awesome share.
In response to Lige
Lige wrote:
My impression was that it was okay-ish. There wasn't enough Lige to keep me interested.

However, I noticed you used the word "bias" a couple of times which improved my impression as I can relate to such a word. #bias

Good job.

So... You're saying you have a bias bias?

Mordasius wrote:
Woah, that was amazing to see, SSGX. Awesome share.

Thanks! As you can probably tell by how many versions I posted in the "Breaking in animate()" thread, and then launching its own thread, I'm pretty proud...lol
The final gif has an error; there is a black square around the world in the center.
In response to Super Saiyan X
Super Saiyan X wrote:
The final gif has an error; there is a black square around the world in the center.

Oh!

Yeah, I didn't realize it was there at the time I made that gif, but it was a side-effect of a change I made. I noticed it later and it's fixed, but that gif snuck out beforehand.
In response to SuperSaiyanGokuX
SuperSaiyanGokuX wrote:
So... You're saying you have a bias bias?

#bias^2
Well, I have to admit, that's an impressive and very symbolic way to demonstrate some of BYOND's new power.

However, I wouldn't really want to use any kind of intro that's generated at runtime. I just think this is something that's better to have pre-rendered at the highest quality possible.

In most mainstream games, any intros or cutscenes tend to be of an even higher level of quality than the actual in-game graphics. While this may seem counterintuitive, an intro can actually serve as an important "hook", to catch the player's attention. It also often simultaneously serves as a kind of advertisement.

Here's a 3D "blue marble" BYOND atom that I had rendered sometime last year:

I was planning to animate this, but I just never got around to it. I still plan to, but right now I have much more important things to work on. The point that I'm trying to make is that animations generated at runtime just can't match the quality or efficiency of pre-rendered ones.



Now I'm not going to discourage you from this. I still think it's a very cool idea, but I also think there are better uses for animate().

What I would like to see is a more authentic look, where the electrons stay inside the shell, and have curved trajectories. I can imagine there might be lots of math involved in that though. With an authentic look, you could then have the atom fill the screen, and have it slowly shrink down, until you can see all of the text (BY ND).

This is kind of what I had in mind for my 3D atom, but I would actually start all the way down to the Earth (which would be spinning for real), at a high resolution, then gradually zoom out all the way to the text on the outside. Also, the letters will be "drawing" right there on the screen, as it zooms out, possibly with cool lightning effects shooting out from the electrons. Then after a few rotations, everything will fall into place, and there will be a big flash, then it will pause for a moment with everything at the "default" positions, before finally fading out. It's hard to describe something like this in words, but hopefully you can understand why this would only work as a pre-rendered animation.
In response to Multiverse7
This isn't your atom, though. It's his own design.
In response to Vrocaan
I wasn't meaning for his atom to be like mine. I was just suggesting that it be more like the official design, as seen on this site. I just think mine more closely resembles that.
In response to Multiverse7
Multiverse7 wrote:
Well, I have to admit, that's an impressive and very symbolic way to demonstrate some of BYOND's new power.

However, I wouldn't really want to use any kind of intro that's generated at runtime. I just think this is something that's better to have pre-rendered at the highest quality possible.

In most mainstream games, any intros or cutscenes tend to be of an even higher level of quality than the actual in-game graphics. While this may seem counterintuitive, an intro can actually serve as an important "hook", to catch the player's attention. It also often simultaneously serves as a kind of advertisement.

I myself never really intended it to be used as an opening splash screen (I just did it to practice using the new features, and wound up liking it a lot, so I wanted to share it as a "toy" for others), it's only been suggested by other users that this could/should be a splash screen.

If that's what they want to do with it, then I'm all for it (and I plan to make it as functional for that purpose as I can, just to accommodate), but I'm not really pushing for that.

However, I definitely disagree that a splash screen (or title screen!) should be of much higher quality than the game itself. It's misleading and shady practice (like the old box-art glory days of Atari and NES, or any one of the thousands of Anime fangame title screens on BYOND games that look nothing like the generic artwork in the game)

I understand that in most cases, a splash screen is usually the developer or publisher's little ad ("this game was made by [blank]" "this game is powered by [blank]" and so it shouldn't have any actual bearing on the expectations of the graphics in the actual game, but if the chasm is too great, it's just not right.

For example, I would never want to see a professionally 3D rendered opening animation like you describe on a BYOND game. Especially not one at such a much higher resolution than anyone currently making BYOND games uses for theirr graphics.

Your atom is amazingly great looking, but it's just not representative (and may even lead to disappointment by comparison) of the product.

Now I'm not going to discourage you from this. I still think it's a very cool idea, but I also think there are better uses for animate().

I'm agreed that there are better uses. Up until I had started this project, I had not yet tinkered with 500, and this was meant to be a practice environment. And actually, the entire thing started out as a baseball that I was "throwing" back and forth from point to point (pixel offset animations along with the "growing" perspective change, and a rotation, etc.), until I realized that I could extend that to perhaps an orbit, and then from there the "AHA!" moment came...

And then I fell in love...lol

What I would like to see is a more authentic look, where the electrons stay inside the shell, and have curved trajectories. I can imagine there might be lots of math involved in that though. With an authentic look, you could then have the atom fill the screen, and have it slowly shrink down, until you can see all of the text (BY ND).

Earlier on, I actually did have the electrons stay inside the shell (both by having a larger graphic for the shell, and also by giving them a smaller orbit), but over the course of tinkering, I wound up with their orbits extending outside of the shell, and I ended up preferring that look, even though it's not entirely authentic (though one of the options I'll provide to end-users is to change the size of the shell if they'd prefer).

And, interestingly enough, my earlier forms (before I recorded the first gif I posted in the other thread; going all the way back to the baseball in the beginning) used pixel offsets to give the trajectory a sort of elliptical shape, but I scrapped that because it was too difficult to work out correctly for the angled orbits (I'm sure it's possible, I just didn't feel like working it out)

[Edit:] And now that I've said that, I realize that the effect could be as simple as just offsetting both axes by the same amount at the same time... Grrr.

This is kind of what I had in mind for my 3D atom, but I would actually start all the way down to the Earth (which would be spinning for real), at a high resolution, then gradually zoom out all the way to the text on the outside. Also, the letters will be "drawing" right there on the screen, as it zooms out, possibly with cool lightning effects shooting out from the electrons. Then after a few rotations, everything will fall into place, and there will be a big flash, then it will pause for a moment with everything at the "default" positions, before finally fading out. It's hard to describe something like this in words, but hopefully you can understand why this would only work as a pre-rendered animation.

I can envision what you're describing, and I definitely think it would look cool (and also agree that it's only possible to pull it off with a pre-rendered animation; well, to pull it off well, anyway), but like I mentioned above, I just don't think it "fits" BYOND.
In response to SuperSaiyanGokuX
SuperSaiyanGokuX wrote:
For example, I would never want to see a professionally 3D rendered opening animation like you describe on a BYOND game. Especially not one at such a much higher resolution than anyone currently making BYOND games uses for their graphics.

Your atom is amazingly great looking, but it's just not representative (and may even lead to disappointment by comparison) of the product.

I can understand why you think that way, and it's very unfortunate. Nobody expects much from a "BYOND game". However, I plan to take my game to a whole other level of quality. I am writing my game in DM, and it runs in the BYOND engine, but I am not designing it to be a BYOND game; or at least not the kind BYOND is known for. So no, such a 3D rendered intro will not fit in with the rest of BYOND, but neither will my game, so I have nothing to lose! In fact, I plan for my game to have a pre-rendered 3D isometric look at the very least, so there won't really be a disappointment. I would put much more effort into the game's graphics, than an intro, so you can expect the quality to match, or at least come close.
In response to Multiverse7
Multiverse7 wrote:
I can understand why you think that way, and it's very unfortunate. Nobody expects much from a "BYOND game". However, I plan to take my game to a whole other level of quality. I am writing my game in DM, and it runs in the BYOND engine, but I am not designing it to be a BYOND game; or at least not the kind BYOND is known for. So no, such a 3D rendered intro will not fit in with the rest of BYOND, but neither will my game, so I have nothing to lose! In fact, I plan for my game to have a pre-rendered 3D isometric look at the very least, so there won't really be a disappointment. I would put much more effort into the game's graphics, than an intro, so you can expect the quality to match, or at least come close.

In that case, I'm all for it!

It's not so much that I don't expect much from a "BYOND game" (I mean, I don't; but not for the reason that BYOND isn't capable of amazing visuals if people are willing to put in the effort; especially now, but it's really always been capable of much more than most use it for)

The unfortunate reality is that graphics take a lot of work, exponentially so if you want to move anywhere outside of the default pixel-art icons, and so for most developers (myself included!), the artwork demands are just too great to aspire to rise above the "BYOND usual".

Especially when most BYOND developers (myself included!) are the do-it-yourself, lone-man types. Without outsourcing the work, it becomes a limiting factor (but one that not many of us are willing to throw off by hiring outside help...lol)
In response to SuperSaiyanGokuX
I used to have the opposite problem. Art and design is the easy part for me. Programming was that ominous mountain that stood in my way. I knew that once I was past it, I could bring my ideas and imagination to life, however painstakingly.

At least with art you can find a vast assortment of GUI tools, that will help you make whatever you want, as long as you have the right workflow.

When it comes to actually programming, your brain, the reference, and limited help, are about all you can get. There are no GUI tools or other things to help guide you through the process. You just have to design everything in carefully formatted text, and try to make sure that nothing goes wrong, even though it always does. It also has the side effect of making you very paranoid about things, which can slow your progress.
I suppose I don't necessarily mean that making art is more difficult, it's just more time-consuming.

For me, its the part of the process that takes the longest. It's not terribly difficult work (if you've got a passable level of talent/skill, and/or the right tools), but it takes so much time.

I actually enjoy making the art more than I enjoy programming (truth be told, I'm not really fond of programming; viewing it as more of a chore that I have to fight through to get the results I want), but in comparison, the programming goes so much faster (but maybe I'm just speaking for myself?)

And, since most of us around here are hobbyists that have other, full-time obligations (jobs, school, families, etc.), time becomes the biggest constraint on BYOND development, and any way to save some of it is usually taken.

Unfortunately, since making art is the step that is likely to soak up the most time, most people cut themselves short in this department.
For me, programming is more difficult AND takes more time to get right. With art, I don't have to think as much, and can fly through it much faster. I am faster with anything that I can directly visualize. When writing algorithms, I often have to struggle through hours of thought experiments, diagrams, and notes, before I can get it just right. I guess it could also be that the more difficult a problem is, the longer it takes me to solve it.

If you think about it, programming (at least in game development) is a form of art itself. You just can't observe it directly, except by what it outputs. It is an art of pure math and science.