Hardcode
Making it happen
Making it happen
May 29th
I did some normal mapping in OpenGL for some University project, ATI only unfortunately (had to bring the videocard for demoing). DirectX 8.1 equivalent OpenGL shaders have very poor support (i.e. code on the net), and you *have* to build two shader versions, as ATI and nVidia have different extensions (not sure how much different though). We may use shaders for optimizing rendering in our next project also, so this quick test was very welcomed.
May 29th
May 29th
I had to improve the scaling quality in our current product (actually in the 2d presentation module), so I tested some filtering techniques. After building some releases with exotic algorithms (Blackman, Hamming), the feedback received and our observations led us to the conclusion that the simple bilinear filtering has the best visual effect.
It will support OpenGL rendering, using maximum (16X) anisotropic filtering for best quality available (with mipmaps of course) (should switch to software rendering for machines with on-board video and strong CPU).
The image edges will be anti-aliased using alpha channel and bilinear filtering (alpha either 0 or 255, precomputed or set up in a pixel shader).
May 23rd
Our experimental implementation of OLE in .NET (not entirely in C#, a MFC proxy is somewhere around) is so full of hacks that we must definitely re-write it from scratch. A primary issue is the bi-directional inter-process communication, we have user .NET Remoting but it’s a bit of overhead, COM is not so usable so we may resort to using Win32 concepts like File Mapping and such.
The basic idea is of an MFC OLE Server (as generated by the Visual C++ wizard) that simply instantiates the real application (written in .NET) and dispatches drawing requests and document openings, while handling the OLE commands like Copy as link.
May 23rd
Microsoft Research has a beta compiler (it integrates with Visual Studio .NET) for the C Omega language. It’s a derivative of C# that supports SQL, XML and XPath directly into the language. So you can write:
foreach (b in bs.book)
{
yield return
{b.title}
{b.author}
;
}
and also:
struct{SqlString CustomerID; SqlString ContactName;}* res
= select CustomerID, ContactName
from DB.Customers
where City == mycity
order by ContactName;
I think we’ll be using this language in our next project.
(via Adrian).
May 23rd
In my first contest after four years, I managed to qualify in the next round. Still I have to practice more for my skills to come back to highschool level. My team-mate Adrian has also qualified, and we think about inviting the guy that got the first place to our team (he is really good, won gold medal at IOI 2004).
May 12th
Finally, I’ve managed to copy files on the device by simulating drag’n'drop on the virtual folders created by VFSWrapper. This VFSWrapper *has* a COM interface, but totally unusable (although good function and parameter names, I couldn’t get it to work). Nokia Multimedia Converter is in the same situation, COM interface but no way to get it work. We may resign to use some 3GP codecs, if we find some. In the end, the good news is that some non-Symbian, Series 40 phones may be compatible with our solution as well (6230 seems to mount its filesystem also, for example).
May 12th
I’m very interested in designing the GUI for our next products we’ll be working at. MDI is *very* outdated, I won’t ever bother to search for .NET components in this area. Tabbed GUI like VS.NET’s are also nice but not for our application (they fit better with Firefox). SDI is the latest trend in this area, so we’ll let Windows’ window manager do its job. Another issue are the panes – here the old-fashion style is the using docking ones. 3D Studio’s scrolling panes are original but not very usable, and the conclusion is that floating panes is the way to go.
May 8th
I’m not sure that this could have a big impact on camera phone picture quality, however it is worth trying (the storage may be a problem though, the pictures are 8 times larger).
May 7th
Some friend of mine working for Symbian told me it’s not possible (I’m talking about streaming in the opposite direction, i.e. from phone to PC) because the major operator companies feel that this will threaten them (VoIP is just an example). I will surely take a look over the existing APIs to ensure they don’t allow this and afterwards study if it’s really not feasible at all.