D3DPOOL_MANAGED is not a valid pool option when using Direct3D9Ex
> There's no lost device scenario when using Direct3D9Ex, as well as some
other behavorial changes (VRAM is 'unlimited', etc.)

This change can break D3DX functionality ( https://stackoverflow.com/q/8540526/ ). This 'more managed' approach to device-loss is continued by subsequent Direct3D versions. OpenGL has no concept of device-loss at all.

Also https://docs.microsoft.com/en-us/windows/desktop/direct3d9/d3dpool , https://docs.microsoft.com/en-us/windows/desktop/direct3darticles/graphics-apis-in-windows-vista#direct3d-9ex , https://docs.microsoft.com/en-us/previous-versions//ms681824(v=vs.85)
Direct3D  Direct3D9  Direct3D9Ex  graphicsProgramming  discussion 
16 hours ago
The Evolution of Direct3D
from https://softwareengineering.stackexchange.com/a/205795/

> Playstation 1 optimized for this problem by using a 3D hardware solution that did not rely on a memory intensive data structure called a Z-buffer, instead they used a polygon level sorting algorithm that produced ugly intersections between moving joints.
> [.....] the simplicity and elegance of Z-buffers to game development were worth the risk that consumer 3D hardware would struggle to affordably support them early on
> [....] It was reasonably believed at that time that Intel deliberately dragged their feet on improving PC bus performance to deter a market for alternatives to their CPU’s for consumer media processing
Direct3D  graphicsProgramming  blogEntries  discussion 
scope(exit) in C++11 – The Witness
a blogger reinvents BOOST_SCOPE_EXIT, and discovers the horrors of std::function
C++  Boost  blogEntries 
2 days ago
'throwing nothing' C++
`throw;` means rethrow. If there's no current exception to rethrow, it's tantamount to calling std::terminate(), and does not perform the stack-unwinding and cleanup that you'd expect.

Also https://stackoverflow.com/a/651188/
C++  exceptionHandling  StackOverflow 
3 days ago
compiling Frank Luna's D3D9.0c examples
In project properties > Linker > Input, "DxErr9.lib" should be changed to "DxErr.lib", and a new entry should be prepended: "legacy_stdio_definitions.lib".
In Linker > General > Additional Library Directories, add where to find D3D9 libraries, e.g. "C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86".
In C/C++ > Additional Include Directories, add the appropriate "...\Include" path.
Lastly, MS have renamed "dxerr9.h" to "dxerr.h", requiring changes to our #includes. Lastlier, good like with character encoding issues.
Direct3D9  WindowsDevelopment  graphicsProgramming  from notes
7 days ago
What are Aggregates and PODs and how/why are they special? - Stack Overflow
not quite the same thing as 'standard-layout', which might be what you really care about, and is weaker (i.e. a strict superset of POD)
StackOverflow  C++ 
8 days ago
a word of warning re. Microsoft's LARGE_INTEGER
> MS uses the LARGE_INTEGER union for passing such long long values for both historical reasons and for forcing alignment of the long long. Some of the Windows API will crash if Quadpart is not aligned correctly. So simply casting an __int64* to LARGE_INTEGER* in calls to the Windows API is not good practice.

Also https://bytes.com/topic/c/answers/698718-weird-problem-structure-union-alignment#post2775668 and https://docs.microsoft.com/en-us/windows-hardware/drivers/kernel/avoiding-misalignment-of-fixed-precision-data-types and https://technet.microsoft.com/en-us/aa383713(v=vs.96)
C++  WindowsDev 
14 days ago
Another Way Structs Create Garbage
> Strangely, we can’t mix these two features without allocating garbage.
C#  CommonLanguageInfrastructure  memoryManagement 
18 days ago
The Camera Transform - UC Davis
skip to 15:45 for the start of the real discussion of the projection transform
graphicsProgramming  YouTubeVideos  videos  lectures 
18 days ago
despite the funny business with WinMain, we can still compile with `zig.exe build-exe hw.zig`

Using `--strip --release-small` flags, the resulting .exe weighs in at 2.5KB
Zig  WindowsDev 
19 days ago
Building Zig on Windows
Follow the instructions to the letter and build from the command-line, don't fire up VS after CMake is done

also https://github.com/ziglang/zig
19 days ago
is_trivial - C++ Reference
> A trivial class is a class (defined with class, struct or union) that is both trivially default constructible and trivially copyable

cf. the has_trivial_constructor trait
19 days ago
Explicitly Defaulted and Deleted Functions
it's possible to prevent 'new' being used, for instance
19 days ago
on .lib files
.lib extension is used for both ‘import files’ (offsets for a DLL) and for statically linked blobs
WindowsDev  linking  from notes
20 days ago
value initialization(since C++03) - cppreference.com
Madness follows the uniform init. syntax.

To be truly sure all members have been initialized, it is still not enough! If there is an empty user-defined default constructor, you just get default init. as usual, so it remains possible that a member could be unassigned. You could static_assert on has_trivial_constructor I suppose. See also the restrictions and consequences of the new syntax at https://en.cppreference.com/w/cpp/language/aggregate_initialization
20 days ago
typology - Wiktionary
Difference from 'typography' seems unclear. There exists rambling nonsense about exactly this distinction [PDF] http://www.me-teor.it/marr_opere/english/Classfqq.pdf
21 days ago
how to have g++ treat 'reordering' as a full error
'Reordering' as in where initialization lists have an order which fails to match the order of the members' declarations (recall that it's the latter that dictates initialization and destruction order): `-Werror=reorder`
C++  g++  from notes
23 days ago
GotW #88: A Candidate For the “Most Important const” | Sutter’s Mill
`const string& s = f();` is legal/precisely defined/well-behaved

Special behaviour regarding which destructor gets invoked.

Also https://herbsutter.com/2013/05/13/gotw-2-solution-temporary-objects/
C++  blogEntries 
26 days ago
Seastar - Seastar
mentioned at https://news.ycombinator.com/item?id=17550440

High-performance web-server with first-class OSv support. Prides itself on scaling with manycore parallelism and avoidance of locking and sharing. Can use a user-mode TCP stack. Ironically the project's home-page doesn't support HTTPS.

See also the adventures in C++ asynchronous programming that ensue: https://github.com/scylladb/seastar/wiki/Seastar-Tutorial
webServers  OSv  unikernels 
29 days ago
« earlier      
advertising agileprogramming algorithms amazon amqp android antivirus apache asp.net assembly asynchronousprogramming authentication aviation aws azure baddefaults bash biology blogentries books boost bugs buildsystems c c# c++ c++11 c++17 certificatemanagement charts chromecast clang cloudcomputing combinatorics commandline commonlanguageinfrastructure compilers compression computerarchitecture computerscience concurrentprogramming copyright cpus crime criticalsystems cron cryptography css d databaseconcurrency databaseprogramming databases databinding datastructures datetimelibraries debugging demoscene design designpatterns direct3d direct3d11 direct3d12 direct3d9 discussion dns dogs drm dynamicanalysis ebooks ec2 email endianness english englishlanguage environmentalism erlang etymology eu exceptionhandling extremeprogramming facebook feminism filesystems filetables firebirdsql firefox floatingpoint freedomofexpression freesoftware functionalprogramming funny garbagecollection gcc gdpr ghost git github google grafana grammar graphics graphicsprogramming graphite guidevelopment hackernews hacks hardware haskell highavailabilitysystems hotspot html html5 http https iis images intel inteltsx ip iphone islam java javafx javascript jit json jvm keepaneyeon keyboardshortcuts language law lectures libraries linux linuxkernel llvm lockfreeprogramming log4net logging mathematics matrices memorymanagement messagebrokering microsoft microsoftgraph microsoftoffice365 mozilla mssqlserver music mysql netflix networking news nginx nmap ntfs oauth2 objectorientedprogramming odata office365 onlinecommenting opengl openjdk opensourcesoftware operatingsystems oracledatabase packagemanagement pandoc papers parallelprogramming parsing passwordmanagement philosophy philosophyofmind photography photos podcasts politics postgres powerpc powershell privacy programming programminglanguages psychology python qt rabbitmq readinglist reddit referencecounting regex relationaldatabases remotedesktop rest science scripting scrum security serverfault slashdot softwareengineering soylentnews spam sql ssh stackexchange stackoverflow streamorientedprogramming superuser sysadmin syslog systemmonitoring talks taskparallelism tcp telemetry terrorism testing tmux todo tpl treedatastructures trustedcomputing tutorials typesystems udp uk undefinedbehaviour unicode unikernels unittesting unix usa uwp vb.net versioncontrol video videoondemand videos vim violence virtualisation virtualservers visualc visualstudio vulkan wallpapers wcf web webapi2 webapis webbloat webbrowsers webdesign webdev webgl webservers webservices windows windows10 windowsdev windowsdevelopment windowsserver winforms words wtb x86 x86-64 xml youtube youtubevideos

Copy this bookmark: