https://github.com/kanishk-16/fps-game
A personal side-project I am working on it's an multiplayer FPS game using OpenGL might prepare a web-app for this in future.
https://github.com/kanishk-16/fps-game
cpp game-development opengl
Last synced: 2 months ago
JSON representation
A personal side-project I am working on it's an multiplayer FPS game using OpenGL might prepare a web-app for this in future.
- Host: GitHub
- URL: https://github.com/kanishk-16/fps-game
- Owner: kanishk-16
- Created: 2024-12-25T07:51:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-25T08:00:41.000Z (over 1 year ago)
- Last Synced: 2024-12-25T08:33:08.446Z (over 1 year ago)
- Topics: cpp, game-development, opengl
- Language: C
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ๐ฎ Multiplayer FPS Game with OpenGL ๐ฅ๏ธ
## Project Overview ๐
This is a personal project to develop a simple multiplayer first-person shooter (FPS) game using OpenGL. The game allows multiple players to join, ๐ซ each other, and gain ๐. The player with the highest number of ๐ wins, and respawns occur upon โ ๏ธ. This project is for ๐ and to learn about ๐น๏ธ development basics, ๐๏ธ programming, and ๐.
---
## Features โญ
- **Multiplayer Gameplay**: Multiple ๐ฅ can join and ๐ in real-time.
- **Basic Shooting Mechanics**: Players can ๐ซ bullets at each other to score ๐
.
- **Respawn System**: Players โ ๏ธ upon being killed.
- **Leaderboard**: Display the player with the highest number of ๐.
---
## Development Tools and Libraries ๐ ๏ธ
- **Programming Language**: ๐ป C++
- **Graphics Library**: ๐๏ธ OpenGL
- **Window Management**: ๐ช GLFW
- **Loading OpenGL Functions**: ๐ฆ GLAD
- **Networking**: ๐ TBD (e.g., ENet, Boost.Asio, or custom implementation)
---
## System Requirements ๐ฅ๏ธ
- **Operating System**: ๐ช/๐ง
- **Graphics Card**: ๐ฎ NVIDIA GTX 1650 or equivalent (with ๐๏ธ support)
- **Processor**: ๐ง Intel i5-10th Gen or equivalent
- **RAM**: 8๏ธโฃ GB or higher
---
## Project Goals ๐ฏ
1. **Graphics Programming**:
- Render a 3๏ธโฃD ๐ (e.g., basic level design with ๐งฑ and obstacles).
- Implement a first-person ๐ฅ view.
2. **Multiplayer Mechanics**:
- Establish a ๐ฅ-๐ architecture for communication.
- Synchronize player actions in real-time.
3. **Game Logic**:
- Implement ๐ซ, collision detection, and ๐
.
- Handle โ ๏ธ mechanics.
4. **Optimization**:
- Ensure smooth ๐ performance on mid-range ๐ฅ๏ธ.
---
## Project Setup ๐ ๏ธ
1. **Clone the Repository**:
```bash
git clone https://github.com/yourusername/FPS-Game.git
cd FPS-Game
```
2. **Install Dependencies**:
- ๐ช GLFW
- ๐ฆ GLAD
- ๐ library (to be decided)
3. **Build the Project**:
- Use `g++` or โ๏ธ CMake to compile the project:
```bash
mkdir build && cd build
cmake ..
make
```
4. **Run the Executable**:
```bash
./FPS-Game
```
---
## Current Progress ๐
- **Completed**:
- Set up an OpenGL ๐ช with GLFW and GLAD.
- Basic rendering (e.g., background ๐จ).
- **In Progress**:
- First-person ๐ฅ and controls.
- ๐ for multiplayer ๐น๏ธ.
- **Next Steps**:
- Implement ๐ซ mechanics and collision detection.
- Build a basic ๐board.
---
## References ๐
- [GLFW Documentation](https://www.glfw.org/documentation.html)
- [LearnOpenGL](https://learnopengl.com/)
- [OpenGL Wiki](https://www.khronos.org/opengl/wiki/)
- [Game Networking Resources](https://gafferongames.com/)
- [OpenGL Tutorial by Victor Gordan](https://www.youtube.com/playlist?list=PLPaoO-vpZnumdcb4tZc4x5Q-v7CkrQ6M-)
---
## Personal Note โ๏ธ
This project is for personal ๐ and fun. The scope may evolve as I progress and learn more about ๐น๏ธ development. Contributions are not currently accepted, but feedback is welcome! ๐