Friday, 18 November 2011

Java TechnologyTraining

JAVA, SERVLETS,JDBC,NETWORK PROGRAMMING,JSP,J2EE, ANDROID App Development training  at 01fes. 01fes offers both online and oncampus training. visit www.01fes.com
Practice online at
www.training.01fes.com

Java Family OnlineTests


http://www.training.01fes.com/java/sco1/

Game Programming Training in india

01fes offers 3D game programming training in directx, opengl and xna both online and oncampus.
visit www.01fes.com for more information.

Saturday, 16 April 2011

Virtual Reality

Virtual reality:
Virtual reality is often used to describe a wide variety of applications commonly associated with immersive, highly visual, 3D environments. The development of CAD software, graphics hardware acceleration, head mounted displays, database gloves, and miniaturization have helped popularize the notion.

seven different concepts of virtual reality are identified: simulation, interaction, artificiality, immersion, telepresence, full-body immersion, and network communication. People often identify VR with head mounted displays and data suits.
Virtual reality  is a term that applies to computer-simulated environments that can simulate physical presence in places in the real world, as well as in imaginary worlds. Most current virtual reality environments are primarily visual experiences, displayed either on a computer screen or through special stereoscopic displays, but some simulations include additional sensory information, such as sound through speakers or headphones. Some advanced, haptic systems now include tactile information, generally known as force feedback, in medical and gaming applications. Furthermore, virtual reality covers remote communication environments which provide virtual presence of users with the concepts of telepresence and telexistence. or a virtual artifact (VA) either through the use of standard input devices such as a keyboard and mouse, or through multimodal devices such as a wired glove, the Polhemus, and omnidirectional treadmills. The simulated environment can be similar to the real world—for example, in simulations for pilot or combat training—or it can differ significantly from reality, such as in VR games. In practice, it is currently very difficult create a high-fidelity virtual reality experience, due largely to technical limitations on processing power, image resolution, and communication bandwidth; however, the technology's proponents hope that such limitations will be overcome as processor, imaging, and data communication technologies become more powerful and cost-effective over time.
IMPACTS OF VIRTUAL REALITY:
There has been an increase in interest in the potential social impact of new technologies, such as virtual reality. Mychilo S. Cline, in his book Power, Madness, and Immortality: The Future of Virtual Reality, argues that virtual reality will lead to a number of important changes in human life and activity.[5] He argues that:

    * Virtual reality will be integrated into daily life and activity, and will be used in various human ways.
    * Techniques will be developed to influence human behavior, interpersonal communication, and cognition.
    * As we spend more and more time in virtual space, there will be a gradual "migration to virtual space", resulting in important changes in economics, worldview, and culture.
    * The design of virtual environments may be used to extend basic human rights into virtual space, to promote human freedom and well-being, and to promote social stability as we move from one stage in socio-political development to the next.
    * Virtual reality can also be used to induce body transfer illusions.

Visit
http://www.01fes.com/

Game Programmer

What do I need to know to become a game programmer:

-C/C++/Win32 and object-oriented programming
-Directx
-Opengl
-C# and XNA Plus point
-3D mathematics
-AI and Physics
-Multithreading experience required
-Self-motivated, strong work ethic, able to work independently
- Good communication skills and thrives as a member of a team



Network Programmer:
-all of the above
-Strong network programming experience, including peer to peer and client
server systems

Plus Points:
-Experience with C#
-XNA
-SQL knowledge a plus

http://www.01fes.com/

AI Techniques in Game programming

Artificial Intelligence in Computer Games:
Right from the very beginning, since the days of Pong and Pac-Man, artificial intelligence (AI) has played an undeniable role in computer games. Although far from the primary concern of developers, AI was still a necessity to produce entertaining games. Now that other aspects of games (for example, graphics and sound) have reached impressive levels, more attention is being focused on AI. Over the past few years, game AI has suddenly burst out of the shadows—even taking center stage in recent games.

This is, of course, not as easy as it sounds. Video games are rife with pretty stupid computer opponents. Early first-person shooters had enemies that walked towards the player in a zigzag pattern, never walking directly towards their target, shooting intermittently. Bad guys in other games would sometimes walk into a corner looking for you, determined that they would eventually find you even though you were several rooms away. Fighting games are even worse. The AI governing computer opponents can become extremely repetitive (so that every time you jump towards the opponent, they execute the same move). I can't promise to teach you everything you need to know to make the next Reaper Bot; that would be the topic of an entire book all its own.

For More details visit

http://www.01fes.com/ai/

Game Map Generation Using BSP Tree

<Introduction of BSP Tree:
In the previous articcle we created a z-buffer to correctly draw polygons in a scene.
The more polygons you have, the more z-buffer checking and potential overdraw you have. Obviously, this doesn't scale well.

What you really want is an alternative to the z-buffer with the following goals:

To potentially manage a large number of polygons

To quickly decide which polygons are visible from any location in the scene

To draw only the visible polygons (and to not draw parts of polygons that aren't visible)

To draw every pixel only once (no overdraw)

At first, those seem like some difficult goals to accomplish. Of course, the technique you use to solve these goals really depends on the type of game you have. For example, a driving game in which you spend a lot of time looking at wide open spaces would probably use a different technique than an indoor game in which you spend a lot of time looking at walls, floors, and ceilings.

You can organize polygons in many different ways to make it easy to decide which polygons are visible. Besides BSP trees, some other types of polygon-organization techniques are octrees and scene graphs. BSP trees enable you to draw all polygons from front-to-back order from any location in the scene.

By extension, using BSP trees solves all of the previous goals. However, the BSP tree isn't perfect. Here are a couple drawbacks:

<li>The world must be static (no moving walls here). However, 3D game objects can move around, so you can use 3D game objects for things such as monsters and doors.</li>

<li>It's computationally expensive to build the tree. However, the ideal solution is to build the tree beforehand, loading the built tree at startup time.</li>

Games such as Doom were the first to implement BSP trees. Doom used a 2D BSP tree with variable-height floors and ceilings, and the rendering engine had a restriction that a player could not look up and down in the game. In the code you make in this chapter, you also use a 2D BSP tree with variable-height floors and ceilings, but you use the 3D rendering engine from the previous chapters so the player can look up and down.

Even though we demonstrate a 2D BSP tree in this chapter, a 3D BSP tree, used in many modern games, is not that much more difficult to master. A 2D BSP tree just makes the examples and equations a bit easier to follow, and other topics such as collision detection and path finding are easier to describe.

The drawback to using a 2D BSP tree is that you can make a world with only vertical walls and horizontal floors and ceilings. However, you still can make some cool worlds with this limitation.


http://www.01fes.com/ai/
Code implementation for <H2>DirectPlay/XNA Networking</H2> is done in 8 steps:
1.Initialization :
It is the the simplest step in DirectPlay/XNA Networking.Here we initialize various objects,see the source code.

2.Enumeration of Service Providers:
Service Provider  allows DirectPlay to interact with other instances of itself on remote systems. The four standard service providers enable Serial Cable, Modem, IPX, and TCP/IP connections. Once the service providers have been enumerated, they can be displayed to the user in a variety of fashions, allowing for identification of the desired connection type.

3.Initializing a Connection:
Now initialize the connecction and report back on the success of operation.

4.Starting/Joining a Game :
Now what,our connection is ready?We can now continue by hosting a game or by joining a pre-hosted game.
The codes for "Host" a session and "Join" a session differs.
To host a game, we must create a "Session Object" and specify various parameters such as maximum number of players, and session title. To join a game, we must first list all available "Sessions" exposed by our game service provider  and allow the user to select the desired game to join.
These are quite clear from the source-code.

5.Creating a Player:
As the players join the game you hosted,you must create each player's ID which will be used during game play.
Player ID is defined by various parameters.See the code.

6.Commencing Gameplay:
Once all the player joined the game,the game starts by default or by user input.like there may be options like "Ready" then "Start Game" etc.
If we want the player to keep joining into the middle of a running game then keep enabled the session's Join property.For example "COUNTER-STRIKE".
If we want the player NOT TO join  into the middle of a running game then keep disable the session's Join property.For example "AGE OF EMPIRES".

7.In-Game Messaging:
Once the game starts,game starts to send messages to any or all of the players playing.
Here messages are positions of different players in world map,fire,chat and so on.

8.Termination :
When a player drops out of game or game is over,that player's session must be terminated.Otherwise the network messages will not be sent out to that player and
some errors may occur.

http://www.01fes.com/