Minimal D3D11 reference implementation: An uncluttered Direct3D 11 setup + basic rendering primer and API familiarizer. Complete, runnable Windows application contained in a single function and laid out in a linear, step-by-step fashion that should be easy to follow from the code alone. ~200 LOC. No modern C++, OOP or (other) obscuring cruft. View on YouTube
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// I tried not doing anything too non-portable so it should be possible to run | |
// this on Mac or Linux... probably... even then, you can't use the obj files there | |
// | |
// once you have the obj file you should be able to do: | |
// link YOUROBJ.obj /defaultlib:libcmt | |
// ^^^^^^^^^^^^^^^^^^ | |
// linking against crt | |
#define _CRT_SECURE_NO_WARNINGS | |
#include <stdint.h> | |
#include <stdlib.h> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ============================================================================= | |
// XNU kperf/kpc demo | |
// Available for 64-bit Intel/Apple Silicon, macOS/iOS, with root privileges | |
// | |
// | |
// Demo 1 (profile a function in current thread): | |
// 1. Open directory '/usr/share/kpep/', find your CPU PMC database. | |
// M1 (Pro/Max/Ultra): /usr/share/kpep/a14.plist | |
// M2 (Pro/Max): /usr/share/kpep/a15.plist | |
// M3: /usr/share/kpep/as1.plist |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#define COBJMACROS | |
#define NOMINMAX | |
#define WIN32_LEAN_AND_MEAN | |
#include <windows.h> | |
#include <d3d11.h> | |
#include <stdint.h> | |
#include <string.h> | |
#include <intrin.h> |
Note: a lot of programmers talk about UI without mentionning the user even once, as if it was entirely a programming problem. I wonder what we’re leaving off the table when we do that.
- https://gist.github.com/vurtun/65977fcff17e413721dbd1191cda719d Vurtun’s notes about UI
- https://gist.github.com/vurtun/61b6dbf21ef060bcbbd8d1faa88350d9 Vurtun’s experiments
- https://gist.github.com/vurtun/9782db089430167453cff6785b37bb46 other notes by Vurtun
- https://gist.github.com/pervognsen/279156b894c5d04ca73df7afc12a37ee Notes about slate by Per Vognsen
- https://docs.unrealengine.com/latest/INT/Programming/Slate/
- https://docs.unrealengine.com/latest/INT/Engine/UMG/index.html
- https://soundcloud.com/podcastcode/6-dont-make-me-write-ui