Jump to content
  • Advertisement
Sign in to follow this  

resources for directx 11 2d, can you help me find one?

This topic is 2174 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

hi there!


i would like to learn to write some games with directx 11.  i prefer vc++ 2012.  


i am reading "programming 2d games" by Charles Kelly.  i find out that it is limiting (maybe that is because i still do not understand all of it.  i have not finished the book.  i got thru chapter 9).  i find that i have to render the image in between graphics->beginScene and graphics->endScene() to be limiting(the book used d3d9 rather than d3d11).


i missed SDL, where i can blit to the screen from everywhere and flip it when done rendering.  that is why i find programming 2d games is so limiting.  i got my program running with all the graphics file and rendering fine until i got to the last part of my program.  i find that directx is very fast, that  is why i want to stick with dx.


is there a book or web tutorial that you can recommend?   


any suggestion will be appreciated.



Share this post

Link to post
Share on other sites

What would you want to render that can not be during the frame? It is not safe with any of those API's to render from other threads randomly anyway, so if you put your begin/end/present in the main loop whats the problem? Also generally doing rendering from your logic is not a great idea anyway, so you only really need the begin/end/present around the main render method, and makes it easier to move rendering and logic to different threads.

Share this post

Link to post
Share on other sites

I have no experience with SDL but if i was the developer of SDL and allowed my user to render anytime they want as you have said, more than likely I would have just created a render-queue behind the scene then every time the user calls blit i would just queue a render command in my render queue. Once the user wants to present the backbuffer to the display, assuming SDL is uing DirectX underneath, i would just go through each of the render command in the queue between the beginScene-endScene to actually render each of the object then flip the screen with a present.


So this may or may not be the underlying implementation of SDL but by the design i mentioned above, the SDL might be doing the actual rendering just like what you are currently doing with your Direct3D application.

Share this post

Link to post
Share on other sites

hi guess,


thanks for the reply.




           so if you put your begin/end/present in the main loop whats the problem?


     well, as i said in my last post, maybe i don't complete understand the materials in the book.  i took some computer classes for minor 20 year ago.   i did not learn any thing about obj oriented programming.  i am now self learning it now by myself.  when i pass a string to a class to which represent as a puzzle to be animate.  the puzzle is a 8's puzzle where one have 8 tile range from 1 - > 8  and move the tiles in a 3x3 board until one reach the goal state which is:



 [4  5]



it is a first project that  i write in my AI class.  but i was text based and in this current program, i write it in graphics interface. 


suppose i use breadth first search to find the solution and then i have to pass the solution to a class to animate the result. the text based program only takes about under 300 lines of code but the graphics interface one takes...you can guess.


so i have a input class where user can enter the original board (suppose the board to be solve is:


[8  4]

[351]   this puzzle created ~2000000 nodes and takes 43 moves to get to the goal state




if there is a solution found, the user have the option to animate it(to see a sequence of moves until it reached it goal state).


the problem i have with oopl is that if i call a class to animate it, i have to pass all the graphics Images and coordinates to the class.  in popl (procedural oriented programming language), it is in the scope.  for my current program, my animate class  does not know my input class's rendering method and my animate class have different graphics layout (it is like in a different levels) and i can not blit it in my animate class.  so if it was SDL, i can blit it in my animate class and dont have to go back to beginScene/endScene/present methods to render it.  i can blit it in my animate class and just have the sprite and coord imported from my board input class.


i hope i succeed in explain my predicament.



Edited by nickme

Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net 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!