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 - Howard Day
Pages: 1 ... 4 5 [6] 7 8 ... 23

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 08, 2015, 09:08:21 am »
Gil: Oh. I understand that. Here're some animated Gifs of it swapping through the options.

Cherno: I'm very familiar with that game - and some of the issues it's had. :( Here are some of the mechs at similar angles, and various settings:


2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 07, 2015, 08:39:43 pm »
Gil: Uhm, that's really odd. So what you're seeing there is a combination of like 3 different things. First, the yellow part you indicated is not one piece. it's the stripe around the missile warheads! they're rounded, and tilted slightly to the side. That makes it looks like a reaaaaly janky semistraight line. The darker line over the white area is a factor of the AA being disabled. Turn that on, and it workds perfectly.  I'll work on making it work as well in the non-AA mode!

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 06, 2015, 08:49:34 am »
Thanks - I still think it needs improvement in a few key areas - though I think it might be time to construct a demo object that follows the needs of a solid mesh that the shader can use. I think I'm going to go with something from Christian Pearce!

So this system is currently designed to work with Unity3d projects - though the specifics of how it was done aren't limited to that engine... any modern engine can pretty much do this.

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 05, 2015, 09:38:05 pm »
Cyangmou: Well, First of all, I'm tickled you took a look at it, at all! Thanks. :D And I completely agree, this is in no way pixelart. It's a 3d model with trickery - but if I can make the tricker fool the eye into thinking, even a little, that it is pixelart, then I will consider the experiment and method to be a success! I can get the outlines cleaner, and reduce the colors per plane, as you said - I've made some major improvements on those fronts here lately. As for the model pre-processing to get the right input into the shaders, it's really not that much of an issue - most is done automatically. The rest is just building the model with the results in mind - literally no different from any other type of 3d modeling. I totally agree that the mech isn't the best shape for this sort of thing - that's entirely intentional. If I had started with a shape that was easy to translate into pixelart, then what's the point? This is all about doing things the hard way to make sure they work. :D
Ai: Yes - there's no total agreement what pixel art is. Which actually works in my favor a bit - I can definitely edge closer to an indeterminate goal than I can to a hardline set of exact specifications. :D
ptoing: Yes! I can do that exact thing, and have - it's in the screenshots below and in the build! It actually is a great addition - non-shadowed models now have a ton more depth than they used to. One minor downside is that angled view of objects can look a bit odd - see the fighter or 3/4s view mechs. Because it's shading the back half of the model from the camera's view, it's not really taking the lighting into account as shadows actually do.
Gil: and yes, that's exactly what I've done. It simply changes how the lighting UVs are calculated, same as the AO does. I'm also looking into clamping values - but I gotta say, keeping them unclamped allows for a lot more lighting opportunities.

Okay, the build is updated! 3 major additions and changes to speak on:
Pixel Locking: This adds the shader  clamping ability of locking each vert of the model to a pixel location - based on the grid of pixels in the camera render. It can be turned on and off, and has the benefit of making some shapes much, much cleaner - while losing some edge detail because of the need to lock to the nearest pixel.

Depth Cueing: The models are now darkened on local object ZDepth - this currently only works correctly on the static, unanimating models - the walking mechs, as they are made up of many smaller objects, don't have the proper information to determine their depth cues. Currently it's a general solution that's a bit too intense in shadowed mode, and not intense enough in Non-Shadowed mode. Working on adding the switch to flip between those options.

Better Palette managing, and AA quality: I've changed the way the textures/lighting ramps work on the objects - they now have a minimized number of colors with a ton of inter-ramp borrowing. For example the white paint colors actually use the dark metal colors half way down. This is very similar to how actual pixel art color palettes are managed. This has the benefit of making color clusters more unified, making AA in general use less colors, and forcing the end result to be cleaner. I took the number of unique colors from 160 to 90. I am going to get that even farther down.
I've also sharpened up the AA through what else - trickery - to help try and clean up some of the lines.

Anyhow, on to the imagery!

Please, any further feedback would be welcome!


2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 03, 2015, 12:19:03 am »
ptoing: Hmm - but one that only affects the shadowed areas? Yeah, I can do that. :D

Ai: Oh, good. Glad it fixes it, sorry I was an idiot. In better news, the Dither bias already exists! It's settable on the objects shader generally, and within each object as well, as the vertex color of green drives how much dither the surface gets. In some cases, mostly the transparent alpha ones, color dithering intensity is separately settable from alpha dithering. It also provides and overall alpha bias offset - the flame on the lady is the same as the explosion - with the alpha bias dropped down a bit to make the flames less billowy. Still mulling over pixel clustering ideas - there might not be a good solution.

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 02, 2015, 10:11:41 pm »
Ambivorous: Yo. :)

Ai: Oh, well the issue is that I'm not smart. I didn't understand what you were saying, and was going about it a totally wrong way. Sorry. I've put your dithering matrix, as is, into the build - and it looks pretty cool!

Gil: Hmm. pixel clustering is likely something I could write a shader for, but only on DXT11 platforms... I'm looking at ideas on how to push it more - like the 2-pixel minimum clustering thread - but forcing the shader to do things the way I want is turning a bit awkward.
Still working on it, but I think my next task is to make a smoke and background shader. those two things are bugging me. :D

And the build's been updated.

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 01, 2015, 09:51:55 pm »
Gil: ..Uh, wow - so, I'm a little surprised you're taking this to the "this can't possibly ever work" level... To be honest, I thought we'd been working pretty well together, and I thought I'd been making great progress. Honestly, I and you both know this will never replace pixel art - that's not the point - the point is to get as close as we can, and I don't think we're there yet. I've reversed the dithering back to a simple 2x2 checkerboard for all further main builds, but when it's released people can change that to whatever. I realize that you're just trying to be a hardass - but try working with me. :)
Ai: Getting exact Bayer dithering patterns is more complex than you'd think. You have to put all the info into a single texture.
Seiseki: Thanks - and yeah, each model has a special shader on it - right now all the objects are using the SAME special shader/material - but this will mean you can mix and match these assets with other objects that aren't pixeled.
Cherno: Oh, okay - well in that case, it's as simple as providing the grayscale image you want to dither with. You can do some pretty cool stuff:

which used this image to dither:

More to come.

2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: October 01, 2015, 08:08:31 am »
Okay, I updated the dithering to be a different pattern, one with more complexity. I also am moving to only support the WebGL build - I've had too many troubles with the Webplayer version, and justabout everyone uses Chrome nowadays. That said, here's a new version.
I added the Strife color palette, of which I'm a huge fan.

I've also adjusted the AA yet again, to be faster, reduced the rendering to a 16bit backbuffer for a speed increase. It's very hard to test mobile perf right now, because of a unity 5.2 perf bug that makes things way slower. But from the tests I've done, I should be pegging 60fps on almost all android platforms. with the bug it's between 45-50fps, and that number can vary widely with which settings are used. AA+2x+Shadows is always going to be more stressful on a GPU than NoAA+3X-Shadows.
I'm still working on a skybox - like everything else... you can't just drop straight, normal art in there - I need to write a shader that supports simple background objects. :D


2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: September 28, 2015, 07:41:38 pm »
Gil: yeah, that'll happen any time the motion of the objects isn't stepped. The Green Hulk mech in the top center is set to have smooth motion, currently - so the crawling pixel artifacts will be particularly visible on it. if the motion is set to snap, even in 1 degree intervals, that goes entirely away. It's pretty cool. :D

Cherno: Done! It was a bit tricky, but I figured it out. Originally I was using this texture to do the dithering:

And the solution was to encode multiple levels of dithering into that same texture - in this case that's done by varying the brightness of the pattern in different patterns. IE, this:

And here's that new pattern in action:


2D & 3D / Re: Realtime Rendering of 3d Meshes as Pixelart
« on: September 27, 2015, 07:37:10 pm »
Got dithered Alpha working! Boy, do I like this effect. It's much better than just straight alpha.


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