A Keytronics foam and foil keyboard for an APL capable terminal from 1984.
The keyboard just sends idle low, 9600 baud ASCII, with special codes for function keys. It is therefore rather impractical to have it implement a USB keyboard.
| float D_GGX_Anisotropic(float at, float ab, float ToH, float BoH, float NoH) { | |
| // Burley 2012, "Physically-Based Shading at Disney" | |
| float a2 = at * ab; | |
| vec3 d = vec3(ab * ToH, at * BoH, a2 * NoH); | |
| return saturateMediump(a2 * sq(a2 / dot(d, d)) * (1.0 / PI)); | |
| } | |
| float V_SmithGGXCorrelated_Anisotropic(float at, float ab, float ToV, float BoV, | |
| float ToL, float BoL, float NoV, float NoL) { | |
| // Heitz 2014, "Understanding the Masking-Shadowing Function in Microfacet-Based BRDFs" |
| // From https://github.com/google/filament | |
| float D_GGX(float linearRoughness, float NoH, const vec3 h) { | |
| // Walter et al. 2007, "Microfacet Models for Refraction through Rough Surfaces" | |
| // In mediump, there are two problems computing 1.0 - NoH^2 | |
| // 1) 1.0 - NoH^2 suffers floating point cancellation when NoH^2 is close to 1 (highlights) | |
| // 2) NoH doesn't have enough precision around 1.0 | |
| // Both problem can be fixed by computing 1-NoH^2 in highp and providing NoH in highp as well | |
| // However, we can do better using Lagrange's identity: |
| ./API,SDK & Consoles | |
| Architecture.pdf | |
| Beginning_Cpp_Through_Game_Programming.pdf | |
| Game Engine and Game Design | |
| Game coding complete 4th edition.pdf | |
| ./Others | |
| a-whirlwind-tour-of-python.pdf | |
| ./AI: |
| Coppied from here: http://apple2.info/wiki/index.php?title=Pinouts#Apple_.2F.2Fe_Motherboard_keyboard_connector | |
| J16 (Numeric Pad) J17 (Keyboard) | |
| 11 X5 X6 26 25 Y7 | |
| 10 X6 SHFT* 24 23 Y6 | |
| 9 X4 Y9 22 21 X4 | |
| 8 X7 X3 20 19 X5 | |
| 7 n/c X1 18 17 X7 | |
| 6 Y5 X2 16 15 RESET* | |
| 5 Y2 XO 14 13 GND |
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