Welcome!
My name is Ming Cheng, currently a master student majoring in computer science in UC San Diego.
As a computer science student, I am interested in software engineering, machine learning and computer graphics. I am procifient
in C++ and C, and familiar with JavaScript, Python and Java. Recently, I am learning Go and trying to build some application with it.
I have experience with web devlopment as well as game development.
Sorting Visualizer
Sorting algorithms are important in computer science. In order to learn about
the mechanics behind different sorting algorithms, I built a web-based visualization
tool to picture merge sort, quick sort, etc.
Built with React.js, JavaScript, HTML, and CSS
Link to Website
Pathfinding Visualizer
Interested in different path finding algorithms such as Dijkstra's Shortest Path,
A Star Seaching, Breadth first search and Depth First Search, I develoepd a web-based
algorithm visualizer to help picture the process of these algorithms.
Built with React.js, JavaScript, HTML, and CSS
Link to Website
Nutrition Games
I worked with Kiran Bhadury,
Sam Lee, and
Yangyi Hu on nutrition gamification.
We developed a learning system with two web-based mini games. I was responsible
for one of the game that taught people about healthy recipes through simple 2D
interaction in game.
Built with JavaScript, HTML, and CSS
Link to Website
Multiplayer of Warcraft II
I worked in the team to build Warcraft II on cross-platforms such as Linux, Windows and Mac.
We developed the multiplayer support for the game using a client-server model. We built a TCP
server that supports mutiplayer gameplay and in-game chatting for at most 8 people via LAN.
Built with C++, Boost Asio and Protobuf
Curve Line Drawing System
Intersted in how to draw a curve line from scratch, I developed a simple system that can
draw two types of curve lines: Bezier and B-spline curve.
It's an application of curve line drawing algorithm in computer graphics.
Built with C++ and OpenGL
Link to Github
Phong Model with Gouraud Shading
Phong reflection model is one of the simpliest light model. I implemented a system that utilizes
the phong equation and simulates the Phong model with Gouraud Shading. I also added half-toning
to simulate shades of grey.
Built with C++ and OpenGL
Link to Github
3D Translation and Project System
Have a hard time imaging 3D objects? I developed a system that draw simple polyhedras in
different perspective. I implemented orthogonal and oblique projection as well as 3D transformation
such as translation and rotation.
Built with C++ and OpenGL
Link to Github
Schedule!
As college students who are taking a lot of classes, we need a scheduler to stay on
track of our daily routine. I worked in a team to build a website that can personalize
people's schedule for a day.
Built with JavaScript, HTML and CSS
Link to Website