- Emil Persson @Humus
- Matt Pettineo @mynameismjp
| #include <conio.h> | |
| #include <stdint.h> | |
| #include <memory.h> | |
| #include <assert.h> | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| #include <intrin.h> | |
| #include <time.h> | |
| #include <vector> |
| // simplygon_minimal_example.cpp | |
| #define WIN32_LEAN_AND_MEAN | |
| #include <fstream> | |
| #include <cassert> | |
| #include <cstdio> | |
| #include <cstdint> | |
| #include <vector> | |
| #include <string> | |
| #include <windows.h> | |
| #include <tchar.h> |
| // note key/value can be arbitrrary type (as long as you define distance function) | |
| build_rbf_interpolator(vec3 keys[], vec3 values[]) | |
| { | |
| N = len(keys); | |
| // distances (any symetrical functio) | |
| // (diagonal filled with zeroes) | |
| Matrix A[NxN]; | |
| #include <windows.h> | |
| #include <stdio.h> | |
| #include <stdlib.h> | |
| // | |
| // This function creates a ring buffer by allocating a pagefile-backed section | |
| // and mapping two views of that section next to each other. This way if the | |
| // last record in the buffer wraps it can still be accessed in a linear fashion | |
| // using its base VA. | |
| // |
| local MockTree = {} | |
| local function addJointEdge(joints, joint, me, other) | |
| local edgeList = joints[me] | |
| if not edgeList then | |
| edgeList = {} | |
| joints[me] = edgeList | |
| end | |
| table.insert(edgeList, {joint, other}) | |
| end |
Memory Optimization (Christer Ericson, GDC 2003)
http://realtimecollisiondetection.net/pubs/GDC03_Ericson_Memory_Optimization.ppt
Cache coherency primer (Fabian Giesen)
https://fgiesen.wordpress.com/2014/07/07/cache-coherency/
Code Clinic 2015: How to Write Code the Compiler Can Actually Optimize (Mike Acton)
http://gdcvault.com/play/1021866/Code-Clinic-2015-How-to
A couple of weeks ago I played (and finished) A Plague Tale, a game by Asobo Studio. I was really captivated by the game, not only by the beautiful graphics but also by the story and the locations in the game. I decided to investigate a bit about the game tech and I was surprised to see it was developed with a custom engine by a relatively small studio. I know there are some companies using custom engines but it's very difficult to find a detailed market study with that kind of information curated and updated. So this article.
Nowadays lots of companies choose engines like Unreal or Unity for their games (or that's what lot of people think) because d
| #ifdef _WIN32 | |
| // Use discrete GPU by default. | |
| extern "C" { | |
| // http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf | |
| __declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; | |
| | |
| // http://developer.amd.com/community/blog/2015/10/02/amd-enduro-system-for-developers/ | |
| __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1; | |
| } | |
| #endif |
| #ifdef _WIN32 | |
| // Use discrete GPU by default. | |
| extern "C" { | |
| // http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf | |
| __declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; | |
| | |
| // http://developer.amd.com/community/blog/2015/10/02/amd-enduro-system-for-developers/ | |
| __declspec(dllexport) int AmdPowerXpressRequestHighPerformance = 1; | |
| } | |
| #endif |
