Please use Chrome or Firefox. IE explorer will encounter some format issue.

Hi there! WELCOME TO MY Realm!

Hi there! WELCOME TO MY Realm!

Hi there! WELCOME TO MY Realm!Hi there! WELCOME TO MY Realm!Hi there! WELCOME TO MY Realm!

Zhisheng Xu, the passionate game play programmer

Navigation Portal

Game Projects

Computer Graphics projects

Internship Experience

image56

All my programming works for games are kept here within the deep tunnel of the oak's heart in the archive. 

Internship Experience

Computer Graphics projects

Internship Experience

image57

All the hobby projects and internship experience will be put here. 

Computer Graphics projects

Computer Graphics projects

Computer Graphics projects

image58

Here are my computer graphics and game projects. Click the link below for more!

Who am I?

Education Background

Computer Graphics projects

My van gesture

The secret information of the Lord. Kneel before me, mortals. 

Photo Gallery

Education Background

Education Background

image59

Pictures about my work, study, hobbies and more go here.

Education Background

Education Background

Education Background

image60

The place where all my education material, relevant courses, and resume are listed. 

About Me

image61

My Background

 I was born in Shanghai, China. From a young age, I was infamous for mischief and crazy ideas. Who could have imagined a seven-year-old boy organizing all his classmates into a convenient noodle eating contest and one-third of the class got a stomachache after that? Impressive, right?  Fortunately, I quickly converted my awful skills of destruction into something useful. I picked up fundamental programming skills in Java when I was in Junior high school because my father brought me a desktop as a birthday present. My initial purpose of writing in Java was relatively impure: to write an executable that will automatically harvest products from my online farm. The online farming system which enabled users to both plants their own plants and steals their friends' was quite popular during that time in China and auto-harvesting products definitely gave me an advantage over my other friends online. However, it ended with my avarice: I tried to come up with an auto-stealing script and was quickly kicked out by the web site's security system. What a shame. I had such a big vision at that time. The security system never had much imagination, did they?

My mum and I in Pittsburgh, PA

My life in U.S.

After entering the University of Pittsburgh in the United States, I began to enjoy the sweet western rebellion in the form of the dancing mob and American fast food. I tried different things that I could never experience in China: hunting, targeting and throwing pancakes at my roommates. The gaming environment here is more tolerable than China's because the limitations on the game contents are more reasonable. I finally can play some games that have blood in them. As for my college life, it went great. I majored in Computer Science and polished my coding skills through suffering classes. Fortunately, I still managed to learn some really cool things from the computer graphics and game design class. These classes remind me why I want to learn programming in the first place: to make cool games.

image62

My Hobbies

My primary hobby is always going to be gaming. It is the fundamental reason to push me into the world of programming because I can make games with codes. Besides, I like to play tabletop wargames like Warhammer 40K and Warmachine series. Painting the miniatures for the wargames actually acts as the cornerstone for my art aspect. You can check out the pictures of my best painting work in the imperial gallery section. In addition, I like biking with my friends and playing soccer. I even took a soccer class during my undergraduate study at Pitt. I do not look like a pure gamer, right? Playing a musical instrument is the last major hobby of mine. Currently, I can play the flute and saxophone. A great way of showing off myself in my friends' parties.

Game Projects

Multi-player passthrough AR with Unreal 4

Arcade Wizard Battle game with Leap Motion

Multi-player passthrough AR with Unreal 4

image63

  • Currently work in progress 
  • Using Vive, ZED camera and Leap Motion to create a pass through AR experience
  • Made with customized Unreal 4.21
  • Multi-player mode through Internet

Co-op VR Game with Makey-Makey and Oculus

Arcade Wizard Battle game with Leap Motion

Multi-player passthrough AR with Unreal 4

image64

  • A two players Co-op game set in the deep ocean.
  • Each players will be assigned a screen with diverse information and actions.
  • Requires intensive communication between players.

Arcade Wizard Battle game with Leap Motion

Arcade Wizard Battle game with Leap Motion

Arcade Wizard Battle game with Leap Motion

image65

  • One week project with five people
  • Superfast prototyping  within two days
  • Arcade-style battle game played by two players
  • Developed with Leap Motion and Unity3D

A sweet love story in VR with Unity3D

A sweet love story in VR with Unity3D

Arcade Wizard Battle game with Leap Motion

image66

  • A visual story game made with five people in Oculus VR device from Unity3D
  • The story tells a boy who dreams of his crash during a math class.
  • First time for me to code complicated shader files for visual effects in Unity3D.

Baby Leg, VR game with Vive

A sweet love story in VR with Unity3D

Baby Leg, VR game with Vive

image67

  • A two-week project with 4 people
  • Protect the baby from ants
  • Developed with Unity3D and Vive
  • Use players' real foot to play the game

Reverie, a painting AR game

A sweet love story in VR with Unity3D

Baby Leg, VR game with Vive

image68

  • A two-week project with 5 people
  • A Japanese Zen Garden which can be colored by players
  • First game designed by me as a programmer
  • Developed with Unity3D and Magic Leap

computer graphics projects

This is an SDL game project created for my undergraduate level game class. It was a group project with ten students and I was responsible for creating wrapper functions to replace the SDL default rendering functions with OpenGL rendering methods so that we could render 3D objects into our 2D game.



For downloading the project's source code and the detailed documentation, please use this link:

https://drive.google.com/drive/folders/1QOD7xn8pf8RY3E8xJdJZ3XAh9OVxqxLy?usp=sharing

This OpenGL project mainly focuses on the creation of random mazes and the solution to find the exit. It mimics the classic screen saver called Maze from Windows98. I implement the right hand rule to solve the maze. For a detailed description on the project and its source code, please check out this link:

https://drive.google.com/drive/folders/1Bi0T-ehjCD8GRFPD7pVHtXf5L1_cxkC6?usp=sharing


My simple version of the famous Temple Run game with OpenGL. In this video I will talk about how I create an "infinite" terrain with a limited number of planes and how I implement a primitive but effective collision detection. For a detailed description of the project and the source code of the project, please click on the following link:

https://drive.google.com/drive/folders/1Oz4XzPGHFfQz1trVvaegmS4CAeGIdxa3?usp=sharing

This OpenGL project is focusing on the application of a simple lighting model to enable basic lighting effect on 3D objects. You can dynamically change the positions of both the light source's and camera's. The highlighted part and 3D objects' shadows will be updated accordingly. For a detailed  description on the project, please check out the Please_Read.txt file along with the source code of the project here:

https://drive.google.com/drive/folders/1kKzOSkUswPbMaPHE0BM-fs9nggq_jFFo?usp=sharing

This is an Unity3D game project I created within a game development group called pittGame4Health. https://pittgames4health.com 


The SDK we were using for this project is called Wrld. https://www.wrld3d.com


My main responsibilities in this group project were to create smooth camera animation and the dynamic spawn of the portal objects when users were  close to certain buildings. Only my work is shown and no download link can be provided because of non-disclosure agreement I signed with Pitt.

Internship Experience

image69

During the summer of 2018, I had an internship with EDDA Technology Company located in NJ. I was responsible for creating an AR training simulation software for surgeries by using Unity3D because it had a matured toolkit for HoloLens which was the designated AR device of the company. It was the first time for me to develop an AR project, and it felt different from creating games for PC because I needed to consider the recognition of real-world objects and hand gestures instead of simply messing up with objects in virtual worlds. For reference, this is the company's website: http://www.edda-tech.com/index.html

image70

Unfortunately, because of the Non-disclosure Agreement, I signed for the internship, I could not record a video or screenshots to demonstrate the Unity project. All I can give is a brief description of what I did. If you look at the picture above, it is how the project looks like. All the Hololens are connected to each other, and all the images are shared synchronously among devices. Surgery students will use their fingers to represent the passing pins to reach the imaginary lesions. I created a module that can dynamically switch among different 3D human body models to simulate various surgery scenarios.

image71

In addition, I coded the collision detection for each individual tissue and blood vessels of each 3D model scenarios'. This was the majority of my work because it was both challenging and time-consuming. For example, can you count how many blood vessels and little organs each 3D model has? On average, I had to deal with 20 sub-models for each body scenario. Furthermore, the collision detection was technically challenging because it was hard to locate the exact positions with users' fingers in the real world. Although Unity3D already had excellent collision boxes, I still spent a lot of time implementation my own detection.

The little project I want to show you guys

The last project I want to show you guys is a little web game I developed in my spare time. The game is a simple version of connect 4. The reason why I do not directly put the game here is that it will consume a lot of resources on the server which means my personal website will be laggy if you run the game here. For the best gaming experience, please use Google Chrome. In order to not confuse the server, I modify the HTML extension into the txt extension. Simple change it back and run the Game!

connect-four (txt)

Download

Contact Me

Get in Touch!

Do not be shy

Feel free to discuss anything with me, kind visitors.

Room 351, 2626 Tunnel Boulevard, Pittsburgh, Pennsylvania 15203, United States

+1 (412)953-1024