Asset - Shaders 3D Mirrors

Dragon47

Member


Download demo: http://www.mediafire.com/download/srt7uf3dd5yyblu/3D+Mirrors.exe

This asset lets you easily implement 3D mirrors into your game. The code is written in GML, but an extra (optional) DLL is used for optimization on windows targets. The mirrors have a customizable reflection depth to give the effect of recursive reflections (if needed), and you can have multiple mirrors in different sizes, orientations, qualities, and with different texture overlays or frame models.

The code is well-organized with lots of comments, and the asset is optimized with efficiency in mind.

Marketplace link: https://marketplace....3367/mirrors-3d


Screenshots:







 

icuurd12b42

TMC Founder
GMC Elder
Wow. this is great.

You are definitely underselling this. I would bump the price back up. and set the sales price to the current price, send a tweet, tell people the sale is for 2 weeks.... You should never sell niche concepts for peanuts. Especially with the mirror reflecting mirrors and people needing this really would not mind paying 10-15$ for this.

Also check you tags for the search. I had a though time finding it from the search.

You got a good set of apis there, very well made.

Suggestions:

1) Add a root folder (3d Mirror) and place your stuff, including the examples, under that folder

3d Mirror
+-API
+-Examples

same for rooms and sprites and shaders.
the exception would be the includes, dll need to be off the root so...

2) I would rename the dll to something a little less generic

3) I would add a m3d_README script explaining the concept. though most should figure out how it works off the bat, there may be things your set of api is capable of doing that we may not even consider... and gotchas we should be aware of.

Or and water reflection with distortion? possible to add my water shader on top of this?

Oh and the dll, is it MS Dev Studio? What redist do I need to include?
 
Last edited:

Dragon47

Member
Wow. this is great.

You are definitely underselling this. I would bump the price back up. and set the sales price to the current price, send a tweet, tell people the sale is for 2 weeks.... You should never sell niche concepts for peanuts. Especially with the mirror reflecting mirrors and people needing this really would not mind paying 10-15$ for this.

Also check you tags for the search. I had a though time finding it from the search.

You got a good set of apis there, very well made.

Suggestions:

1) Add a root folder (3d Mirror) and place your stuff, including the examples, under that folder

3d Mirror
+-API
+-Examples

same for rooms and sprites and shaders.
the exception would be the includes, dll need to be off the root so...

2) I would rename the dll to something a little less generic

3) I would add a m3d_README script explaining the concept. though most should figure out how it works off the bat, there may be things your set of api is capable of doing that we may not even consider... and gotchas we should be aware of.

Or and water reflection with distortion? possible to add my water shader on top of this?

Oh and the dll, is it MS Dev Studio? What redist do I need to include?
Thank you :)

Adding a root folder is a good idea, as well as renaming the dll file. A README or GUIDE script is something I've been adding to my newest marketplace assets, I might go back and do it with this one as well.

And the price, you have a point, but I've already lowered it, so I feel like it would be a bit odd to suddenly raise it again, hopefully the lower price extends the target group to people who want to try it out for fun or for learning purposes at least.

I'm not sure what should be changed with the tags. Do you mean the forum thread tags or the marketplace tags? I changed one of them (a forum tag) to "shader". Maybe I've missed some obvious words?

The DLL is written in ms visual studio express with directx 9. It's actually a simplified version of the dll from my Graphics Utilities marketplace asset. By the way, in version 1.0.1 I've set the DLL optimization to false by default. The latest version of GM seems to have issues with DLLs when there are too many arguments. I've heard it's been fixed in the early access version though. It can be set to true manually in the init script.
My additional C/C++ include directories input field is "D:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Include", and for the linker I have additional library directories set to "D:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86". So you'll need the microsoft directx SDK.

The reflections work by multiplying the view matrix with a reflection matrix (that holds the info for the reflection across the plane the mirror lies within). The near plane of the projection matrix is skewed so that it aligns to the plane of the mirror to clip geometry that should not be reflected (as in geometry that is behind the mirror before reflection). The scene is drawn using these matrices which composes the reflection for the mirror and it's drawn to and stored in a surface. When the mirror model is drawn this surface is mapped onto the mirror with a shader. If you delve into the code behind the API you can probably get some distortions in the reflections.
 

icuurd12b42

TMC Founder
GMC Elder
I mean the marketplace keywords (sorry). search for 3d Mirror or Mirror 3d... Mirror is fine but the other 2 are not. Hmm, I guess it not possible to have a "Mirror 3d" keyword...

So June 2010... So one needs MS Redist 2010, probably
 
Top