Skip to content

ProjectTriggerOn/game_client

Repository files navigation

English | 日本語

TriggerOn Client

Windows game client for TriggerOn — a multiplayer networked FPS built with Direct3D 11 and Win32.

Features

  • Direct3D 11 rendering with HLSL shaders (lit, unlit, skeletal animation)
  • Server-authoritative netcode with client-side prediction and smooth correction
  • Three network modes: mock (offline), local (LAN), remote (internet)
  • Skeletal animation via ASSIMP with cross-fade blending

Requirements

  • OS: Windows 10 or later
  • IDE: Visual Studio 2022 (platform toolset v143)
  • C++ Standard: C++17

Build

From Visual Studio:

Open TriggerOn.sln → select Release | x64 → Build Solution.

From command line:

msbuild TriggerOn.vcxproj /p:Configuration=Release /p:Platform=x64

The build compiles HLSL shaders to .cso and copies them to resource/shader/ via a post-build step.

Configuration

Edit config.toml in the same directory as the executable:

[network]
mode = "mock"             # "mock" | "local" | "remote"
server_port = 7777
local_host  = "127.0.0.1"
remote_host = "127.0.0.1"

[client]
window_width  = 1280
window_height = 720

Network Modes

Mode Description Server required
mock In-process mock server, no real networking No
local ENet UDP to 127.0.0.1 Yes (local)
remote ENet UDP to remote_host Yes (remote)

Runtime Files

The following must be in the same directory as TriggerOn.exe:

TriggerOn.exe
assimp-vc143-mt.dll
config.toml
resource/
├── audio/       # BGM and sound effects (.wav)
├── model/       # 3D models and animations (.fbx)
├── shader/      # Compiled shaders (.cso, generated by build)
└── texture/     # Textures (.png, .jpg)

Project Structure

Core/           Window, Direct3D init, input, config, timing
Game/           Game loop, player logic, collision, state machine, scenes
Graphics/       Shaders, models (ASSIMP), sprites, textures, camera, lighting
Network/        INetwork interface, ENet client, mock server, remote players
Shaders/        HLSL source files
ThirdParty/     ENet, ASSIMP, toml++

About

Windows game client for TriggerOn — a multiplayer networked FPS built with Direct3D 11 and Win32.

Topics

Resources

Stars

Watchers

Forks

Contributors