TECHNOLOGIES
FORUMS
JOBS
BOOKS
EVENTS
INTERVIEWS
Live
MORE
LEARN
Training
CAREER
MEMBERS
VIDEOS
NEWS
BLOGS
Sign Up
Login
No unread comment.
View All Comments
No unread message.
View All Messages
No unread notification.
View All Notifications
C# Corner
Post
An Article
A Blog
A News
A Video
An EBook
An Interview Question
Ask Question
Breaking Changes in XNA 4.0
Ibrahim Ersoy
May 06, 2012
12.5
k
0
2
facebook
twitter
linkedIn
Reddit
WhatsApp
Email
Bookmark
According to Shawn Hargreaves these are the Breaking Changes made in XNA 4.0.
A longer version
here
Replaced StorageContainer.TitleLocation with a new OpenStream API
Replaced individual graphics renderstates with a new state objects API
Premultiplied alpha is now enabled by default
Made it easier to use SpriteBatch with custom renderstates and custom shaders
No more SpriteBatch vertex shader magic, so you can easily position SpriteBatch text in a 3D world using BasicEffect
Vertex buffers are now strongly typed, each one having an associated VertexDeclaration
You no longer need to specify a VertexDeclaration before drawing, because this is implicit in your choice of vertex buffer
Vertex buffer sizes are now specified as number of vertices rather than bytes
Replaced GraphicsDevice.Vertices with a new SetVertexBuffer API
Each rendertarget now has an associated depth buffer: no more DepthStencilBuffer type
RenderTarget2D now inherits Texture2D: no more GetTexture method
SetRenderTarget atomically sets all rendertargets, rather than changing just one layer
Replaced Effect.Begin and End with a new EffectPass.Apply method
Removed the low level shader APIs (VertexShader, PixelShader, Set*ShaderConstant)
Removed EffectPool, StateBlock, GammaRamp, ClipPlane
Removed triangle fans
Removed point sprites
Changed the Color type from BGRA to RGBA byte ordering
Next Recommended Reading
XNA & Silverlight Together in WP7!