100% pure software 3D rendering with c#
http://alansimes.blogdns.net/forums/12/ShowPost.aspx
Feedback greatly appreciated.
Alan
http://alansimes.blogdns.net/forums/12/ShowPost.aspx
Feedback greatly appreciated.
Alan
Hi,
On word. Magnificent... I never knew that Managed DirectX is that powerful...
cheers,
Paul June A. Domag
It's not DirectX, it's a software renderer written entirely in C#, it's only 80k in size.
alan
Hi,
Ok, I was assuming that he used directx. But I guess he really developed his own rendering engine. It's quite slow on my computer (I think its my graphics card).
Is there a technical article on this? I mean a whitepaper that explains how to use it? Or better on how it was done?
Well, the source code is included though... Nice job...
cheers,
Paul June A. Domag
It's all written in C# and only needs a half decent processor, the demos can be made to speed up by reducing the original scene creation size and modifying the controls draw method to use a faster DrawImage call.
Instead of this
Graphics g = e.Graphics;
g.SmoothingMode = Drawing.Drawing2D.SmoothingMode.HighQuality;
g.InterpolationMode = Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(_scene.getImage(), 0, 0, this.Width, this.Height);
I could do this I wrote the engine as a demonstration of the capabilities of C#, the 3D pipeline is pretty sophisticated and allows for reflections, transparency, environment maps, per object manipulation as well as a raft of other stuff. I am happy to modify / improve it if there appears to be an interest. I also wanted to develop a lightweight control that could be used to do simple 3D rendering in Internet Explorer without incurring horrible hardware security exceptions. The 3D control is JavaScript enable and exposes a reasonable interface as well as being able to import 3D studio files. All file loading, material loading etc is capable of talking uri's as paths. It's been fascinating.
Graphics g = e.Graphics;
g.DrawImage(_scene.getImage(), 0, 0, this.Width, this.Height);Which would have a dramatic impact on slower graphics cards as we are not asking the GDI to perform the interpolation.
Alan, Something that works real time with C#, and VB.NET and supports all this: reflectivity, transparency, environment map + more: textures, interactive markers, vector graphics, 3D read out tools and much more can be found here
http://www.sciencegl.com/
gallery
http://www.sciencegl.com/3Dsurf/Shots/screenShots.htm
business visualization
http://www.sciencegl.com/Stock_market/Stock_market.htm
Enjoy good and easy to use 3D graphics.
Thank you for attention
Nick