Archive for July, 2005

Physics board

AGEIA build a device that accelerates physics computations, getting them off the CPU. An absolutely cool idea, I hope a standard will appear quickly (maybe in DirectX? what about DirectPhysics?) and also a software implementation (based on Havok for example), so that it will gain mass acceptance.

Hardware raytracing

These people have built a realtime raytracing chip. Supposing it has an OpenGL interface, the device is stunning (the pipeline is programmable also). When will ATI and nVidia switch to raytracing ? Ok, shaders are cool but I’d like a major switch in architecture like this one.

Disable the “Server busy” dialog

Here is the quickest way to disable that annoying dialog displayed in OLE client applications :

	// disable the "server busy" dialog
	AfxOleGetMessageFilter()->EnableBusyDialog(FALSE);
	AfxOleGetMessageFilter()->EnableNotRespondingDialog(FALSE);

Holiday report

Ok so I’m back from a one-week holiday that involved going to Vama Veche, a quick trip to Bulgaria for the Deep Purple concert and an expedition in the Danube Delta.

OpenGL stuff

For about two days I have been messing with some rendering bugs in the OpenGL engine. First of all, some textures appear white under heavy load – I found the low memory to be the cause. It appears that OpenGL need system RAM to load the textures, and doesn’t like virtual memory very much (at least on nVidia, because on ATI I managed to upload lots of textures to the pagefile also). The other bug is caused by a visible shift in objects’ texture coordinates, that in the beginning occured in memory-full conditions but then appeared when there was plenty of RAM available. Still left to investigate.

The Grid

I found some problems in the MFC Grid, first of all the GVN_SELCHANGED notification is not fired when the selection is modified using the keys, also the grid doesn’t set itself focused when it’s activated by mouse-click (apparently this happens only if the grid is used in an OCX).

Doomed

Nice link over at Slashdot about iD loosing the first place in the FPS industry. I completely agree with them, and if some time ago iD was the best company I’d have liked to work for, now I really changed my mind. Blizzard is now in the top.

OLE stuff

Ok so a quick review over today’s learned lessons: you shall not remove COleClientItems from the document when they are deleted (because they are kept in the undo structures and thus the OLE connection needs to be active). Also, I had to hack the document closing routine to force the destroy of the OLE items because they had bigger refcounts than they should have had (this happened for some objects only – possible a bug in the server).

Real-time communication over http

I’m talking about building connections over the web (initiated from the webpage) but not packet-based as XMLRequest-based apps are doing. Real, connection-based web apps are currently being built in Flash, however I’m wondering if they can be built on top of http (actually http was never designed for this). A new kind of web-based apps can be developed then, and real-time collaborative software is what I’m primarily interested in. Another problem is whether to use peer-to-peer design or client-server (this may surely be better, because of firewall issues and such).

VB component self-register

Did you know that a VB executable registers automatically the components it depends of at startup (if they are not registered) ? So I guess it caches the ocx name along with the GUIDs and if it can’t instantiate the component it looks in the current directory for a file named like that – then self-registers it. Could be dangerous though – the wrong component may be registered by mistake. Some official info here and here. It appears the components are not actually registered.