Last week, snowed in Tokyo !
Recently I had an hard-disk crash. Was the main HD of the server (mostly just the OS). It was a Maxtor (ehh !).
In light of that, I went on and bought a TeraStation. It’s a NAS (Network Attached Storage). A stand-alone system that holds 1 Terabyte of data on 4 250GB hard-disks.
Cool, but, I did the mistake of using it as RAID Spanning. Only later I fully realized that RAID Spanning is for speed and nothing else: it slices files in blocks of 8KB and spreads them on all the HD’s of the RAID.. without any parity ! I just wanted the RAID to be a continguous 1 TB of storage, no striping. I figured that the important data could be backed-up independently,
Apparently that’s not possible, so now I’m going to move data out, reformat the RAID as RAID 5. With RAID 5, 1TB becomes 750GB with parity, if one HD breaks, no data is lost.
I recently, succesfully used DSharingu to do mainteninance on my sister’s computer. It worked well, although some problems arised with her wireless LAN connection (what was the cause it’s beyond me !).
I’m working on a rewrite of the GUI. Moving onto wxWidgets. I don’t like wxWidgets reliance on inheritance. It’s actually a pain in the ass. The event table thing also looks kind of lame. But it’s the best option out there and I certainly prefer wxWidgets to MFC or plain Windows GUI programming.
I’m actually just trying to get a toolbar and other things like that. Nothing too fancy, functional stuff.
At work I finally re-implemented my spherical harmonics routines. Code written for PS2 has been ported on XBox 360. VLC asm to HLSL (high level shaders language, looks very much like C, practically same as Cg. Speaking of flakiness of memory.. I actually forgot in the process to properly port some code that was doing space transformation. That was something I had problems with in the past, a problem that I spent some time trying to solve, and then I completely overlooked it recetnyl as I was porting. Basically I had to “sandwich” a matrix between object<-world and world<-object (inverse of former), but, of course, I forgot that and started having problems.
In detail, the spherical harmonics matrices of the light-map were calculated in world space. To move them into object space, it goes:
obj_space_light_mtx = object<-world_mtx * world_space_light_mtx * world<-object_mtx
It’s 2AM.. we zzzzz !!!
Posted by Davide Pasca in Programming, 3D Graphics, Diary
