Sunday, February 24, 2013

Game Graphic 6

    Here comes assignment 6.
    This week is unlucky for me. I try this assignment very early because I know that both Maya and Binary files are new to me. However,  I got an eye problem and it make me hard to use computer....

    I want build a nice world at first But my eyes do not support me. Anyway. I had to finish the assignment first. So here just a simple sphere I got it work.
   code
 
 



    When I finish an torus and export it into VS.  I found such a simple polygon  had already contains 400 vertices and 200 faces...... 1809 line code. (Luckily we have Maya, how about the  people finish this when Maya does not exist...)
                                                                       
      I can't imagine how next generation game creating an HDR emulation human face with million polygon. No matter to say the whole game scenes. So may be I should just get a basic understanding of how computer do this for us. And focus on learn game engine  Based on lots of great computer scientist who made powerful engine like Unreal and Cry.

    How to balance my energy to learn Commercial Game Engine and fundamental part of computer science has become a problem now...




   

Friday, February 15, 2013

Game Graphic 5

    Based on Assignment 4

     o_color = diffuse_color*(diffuse_light+float4(g_ambient_color,1.0))+specular_light;

     This is how we do light in computer graphic. Computer science always inspired me in amazing way. Take light here for example. Computer scientist didn't build a source of light(This is what we understood of light and where is light from) in computer, they animate the effect that a point of light, diffuse light, and environment light may caused to a object together to show the graphic.
     They solve the problem on different way, the way usually opposite to us   (at least me). However, it is the unique thinking point that change the world dramatically. Maybe we should keep in mind to try solve difficult problem on different way in daily life. That is the biggest harvest for me.  DX11 may change, shader language  may change or maybe I will change my Job in future. But the knowledge of how to abstract problem to finish it last forever


CODE
Light manual:
 I K J L O P(Z axis)


                                 


Game Graphic 4

 Honestly  speaking , I  believe 10 hours is just enough for me to understood what I should do and how could I do to finish the task.
I spent lots of  time this week to see how my classmates built their I /O  and program structure. From this process  I found how inefficiency my programming is and it is hard to do expansion and code management.
(it is a valuable experience to make such mistake and see how other people do it better)
So I do rebuilt everything and make my I/O systems work in a expandable way.
Similar to I/O system. I realize I should make my parser expandable. So I made Effect parser, Entity parser, Material parser inherited from a parser class in order to do future expansion.


Even though, it is a painful experience to finish such a big structure. But I am glad I had learn lots of knowledge beyond game graphic.

By the way,  I have solved my CADE problems by going to CADE office.  I realize that a directly download link is not only a convenient advance but also take advantage of commercial elements behind a tiny change.


Here are cubes  made by two different fragment shaders


At first I cannot got depth buffer in PIX

With TA's help
m_direct3dDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);
                                           
Code

Wednesday, January 30, 2013

Game Graphic 3




    O(∩_∩)O~ Mission accomplished.
   I made my I/O upgraded . From light task , I gradually know what advance math I studied on undergraduate and high school used for.
Computer graphic is a interesting subject. I willing to put more time for deep study.
  And I also want find some shader language information to improve my skills in next few days.
   Manual:
   Light move:
   I J K L (pg up pg dn)moving on z aixs.

    
   

Friday, January 25, 2013

GameGraphic2

This week I had to figure out the whole process of  how professor's huge project work......
initialize  update  arguments flows
I think I even got familiar with DX11 now.
Vertex buffer.. Index buffer, shader, word_matrix view_matrix ... projection_matrix

I spent two day to focus this Assignment and finally I can finish it on time.... hard time but happy ending.

My_Code
Manual :
Position :
arrow_up arrow_down arrow_right arrow_left

Camera:
w s a  d.






Sunday, January 20, 2013

Old Semester Pass, New Semester Comes, Unity Still

              Last semester, last project, we begun to use Unity to developing game. It also the first time that I realize how powerful a commercial game engine looks like. However, We have eight people on the team that time. So when all tasks had been assigned to team members, UI staff and tutorial are all I need to do.  
            
            New semester coming now, this time we have to focus on a big project instead of making several prototype. I finally chose Vinyl  for its unique ideas and peaceful game mechanic (I am tired of fighting with enemy..... and knocking down something on  screen) 
    
               luckily, Vinyl will use Unity to bring her unique feature and mechanic to player. So I can continue learning and working on Unity to increase my understanding of commercial game engine.
At same time, hard working on winter break to make up C++ had solid my C programming style. So C# in Unity would be a good chance to deep my programming skills and software architecture.

        Everything is moving to the bright side. Tuition benefit, langue skill improving, programming skills improving...... Just work harder day by day.... that is what I can do. And I believe it is the promising  road to the colorful future.


Saturday, January 19, 2013

Game Graphic1

Code 
 Finally, I have finish up the assignment of  graphic class. I believe it should be easy to handle at first since I have totally got the key points mentioned on the class . But it turns out that not only we need  use computer graphic knowledge learn from the class. but also C++ I/O and some software architecture stuff.

Besides graphic pipeline , from this assignment I grasp some fundamental ideas for using Class and C++I/O to expand programs. And how John plug Lua language into VS are also inspired me in program integrity.

Below are picture of PIX debugging to modify vertex shader and 
fragment shader: