electronicarts/cpp-ml-intro

C++ ML Intro

C++

149

21 commits

updated Jun 23, 2025

See the code

README

CPPMLBasics

See the trained network in action in your browser using WebGPU. Draw a digit and it will tell you what number it think you drew, in real time: https://electronicarts.github.io/gigi/Demos/mnist/index.html

The code repo to go with the blog posts and YouTube video:

  1. Blog Part I: https://www.ea.com/seed/news/machine-learning-game-devs-part-1
  2. Blog Part II: https://www.ea.com/seed/news/machine-learning-game-devs-part-2
  3. Blog Part III: https://www.ea.com/seed/news/machine-learning-game-devs-part-3
  4. All 3 parts in one video: https://www.youtube.com/watch?v=sTAqWRsEiy0

The Data folder contains the mnist hand drawn digits in their source format. Executing the Training project will extract those images into pngs.

The Demo folder contains the C++ DX12 demo which allows you to draw numbers, and have the neural network run on the GPU to try and classify what number you drew.

The Training folder contains the C++ code to train the neural network on the mnist data.

The Exercises folder contains the exercises that go along with the article.

Authors


Search for Extraordinary Experiences Division (SEED) - Electronic Arts
http://seed.ea.com

We are a cross-disciplinary team within EA Worldwide Studios.
Our mission is to explore, build and help define the future of interactive entertainment.

This code accompanies articles written by Alan Wolfe (blog.demofox.org)

Contributors

Atrix256

21 commits

electronicarts/cpp-ml-intro

C++ ML Intro

C++

149

21 commits

updated Jun 23, 2025

See the code

README

CPPMLBasics

See the trained network in action in your browser using WebGPU. Draw a digit and it will tell you what number it think you drew, in real time: https://electronicarts.github.io/gigi/Demos/mnist/index.html

The code repo to go with the blog posts and YouTube video:

  1. Blog Part I: https://www.ea.com/seed/news/machine-learning-game-devs-part-1
  2. Blog Part II: https://www.ea.com/seed/news/machine-learning-game-devs-part-2
  3. Blog Part III: https://www.ea.com/seed/news/machine-learning-game-devs-part-3
  4. All 3 parts in one video: https://www.youtube.com/watch?v=sTAqWRsEiy0

The Data folder contains the mnist hand drawn digits in their source format. Executing the Training project will extract those images into pngs.

The Demo folder contains the C++ DX12 demo which allows you to draw numbers, and have the neural network run on the GPU to try and classify what number you drew.

The Training folder contains the C++ code to train the neural network on the mnist data.

The Exercises folder contains the exercises that go along with the article.

Authors


Search for Extraordinary Experiences Division (SEED) - Electronic Arts
http://seed.ea.com

We are a cross-disciplinary team within EA Worldwide Studios.
Our mission is to explore, build and help define the future of interactive entertainment.

This code accompanies articles written by Alan Wolfe (blog.demofox.org)

Contributors

Atrix256

21 commits

Languages

C++

100.0%