Advertisement Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

253 Neutral

About jischneider

  • Rank

Personal Information

  1. Version 1.0 is finally here!! It had taken a lot of effort and dedication but I think I am delivering a good and optimized foundation for your games. There still some system to complete like the animation system, or to debug like the music system. However, this version is very robust and reliable, has a big feature set and runs very good on PC and Xbox 360. I hope you enjoy as much as I do making it! [attachment=13450:Screenshot-0056.jpg]
  2. Version 0.95 is almost ready. Some of the new features/improvements include: • Improved Xbox 360 support. • More features in the editor (not everything could be implemented). • Far better batching. • Multithreaded frustum culling (thanks to the data oriented design). I also made optimizations like the inclusion of a better Intersects method. • Normals are now compressed using Crytek’s Best Fit Normal method. • Light’s clip Volumes and stencil optimizations were added by the implementation of the reconstruction of the GPU Z-Buffer. • Added cube shadow maps for point lights. • Added virtual buttons and axis to map input more easily (similar to Unity 3D). • Added rudimentary physics support via Bepu Physics. • The old shader’s parameter code was replaced by a better implementation. • Added anamorphic lens flare. • Fewer castings, unnecessary actions, and bugs.   [attachment=13252:ScreenshotTechDemo.jpg] [attachment=13253:Screenshot-0027.jpg]
  3. jischneider

    Fx Shader weird Culling Issue

    Ok. I removed my mail from here. I don't want too much spam.
  4. jischneider

    Very basic AO concept in HLSL

    You always have to render some geometry on the GPU. If you render text or textures on screen, the SpriteBatch internally renders a quad for you with a texture on top of it. And when you want, for example, post process an image, you want to apply some code (shader) to all your pixels, therefore you render a quad to cover the entire screen and in each pixel the pixel shader will perform the calculations that post process the image (the image you want to post process should be a different texture because you can read the destination texture on a shader). The quad is a medium to indicate to the pixel shader where to perform its calculations. With deferred renderers, you have the scene preprocessed (G-Buffer). You have the depth of the pixels, the normal in each pixel and some other information. What you do in latter stages is to use this information and compose with other information. For example, in the stage you want, I guest, to calculate an ambient light or directional light, lights that affect potentially all your pixels, therefore you render a quad to cover all screen and in each pixel you read some scene information (from GBuffers) and compose with some other information (light information in this case) to produce the lighting result. Light intensity is additive, if you want to apply another light, just render another quad (this time with another light information) and you add the new result to the previous result (you need to set the blending states to do this automatically). Lunch!! When I’m back I continue.
  5. jischneider

    Very basic AO concept in HLSL

    Tomorrow I will read your posts. Right now I don't have time.
  6. You can also try a profiler. The best tool to know what happen under the hood. If you never use one this is a good opportunity to learn about one of the best tool for a game programmer. Particularly I use Visual Studio’s Performance Wizard profiler.
  7. jischneider

    What's the best C#(XNA) book/site One of the best places to find XNA articles, examples, tutorials and source code.
  8. jischneider

    XNA 3D Level Editor

    Great!!! I will try it tonight. Thanks for share.
  9. You are welcome. I don't remember how I reach my formula, but I do remember that I was sure that it was the correct and of course it works very well for me. But if your engine is working why changed, right? Bye!!!
  10. Like I said before I calculated halfpixel using the following code: output.position.xy += halfPixel; But halfpixel is equal to Vector2(-1f / destination.Width, 1f / destination.Height)); Be aware that the first value is negative. I forgot to mention before. That said: position.y = -(input.TexCoord.x * 2.0f - 1.0f); The x should be y. The rest seems fine. I you want to improve performance you can avoid the matrix multiplication in the world position calculation. Ask me if you want.
  11. You are close. If multisampling was active then it was causing some halos (and performance lost), now you have to found your other source of halos. In my engine I use this in the vertex shader of my directional light: output.position.xy += halfPixel; Read this:
  12. jischneider

    Aesthetics... A pain in the butt.

    I'm using a desktop computer and I try both Opera and Internet Explorer and nothing appears.
  13. jischneider

    Language Comparison

    Another possibility is to use Unity 3D. You still need to program the logic of your game (and you can in C#) but not the engine. This has another advantage you can see how a good engine is structured. If you want to learn about engine development then XNA + C# is IMO the best combo to start. But what is it the part of game development that you love the most? If it is graphics then I can give some tips.
  14. jischneider

    My game Provocative Fish

    Try to separate the score and text in a panel that has more contrast and design and improve the "provocative fish" logo. You can borrow ideas for your panel from web pages or web games. Your textures are monotonous and ugly. There is no shore either. And probably the water does not move; try to give life to your game with this.
  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!