239 karma · joined September 15, 2010
Edit: I realize what I saw is a textured version of what you are describing.
The 3D perspective page http://webglfundamentals.org/webgl/lessons/webgl-3d-perspect... clearly describes the rasterization phase as having 3D: the automatic perspective divide and the triangle clipping to a 3D space. Clip space being 3D seems very strange if WebGL is only a 2D API.
My suggested patch would be to rephrase it for the beginner. "WebGL is largely a 3D rasterizing API and not a fire-and-forget scene rendering solution."
If WebGL were only 2D it would be trivial to implement 3D without shaders in <canvas> -- and that is not true, canvas cannot rasterize 3D triangles.
The graphics are done on an ordinary timer which redraws based on the cached video state from the audio callback. JSMESS could probably do the same.
You'll always have a serious problem when there is more than one timer. If I could change the APIs, I'd add a requestAudioVideoFrame() timer callback where you would supply both the video (rendering) and the audio buffer for a given segment of time. That would also give the browser more control over the situation.
A key problem (and measure of quality) for me is reducing the latency. I've had trouble getting continuous sound with less than a quarter second of buffer. (Ideally, I'd like to achieve smooth sound with only 17ms of buffer/lag). Another browser to work with will help, and, maybe the IE team will take notice.
FWIW, the cause was getImageData(0, 0, w, h) returning 4wh pixels and not w*h as I naively expected.
Porting or re-implementing these kinds of oddball programs is a way to explore the possibilities. How fast can Javascript really run? Are the graphics APIs sufficient? Should browsers support USB joysticks? Cameras? In other words, helping to see where the straightjacket is loose. And, ideally, encouraging the browser developers to cut some of the straps.
Second, I imagine they will use the devices as actual phones to contact the employees. No need to PA a clerk to pick up a phone. Just forward the call.
As always, pay attention to how the child reacts, too.
Raymond's article:
http://blogs.msdn.com/b/oldnewthing/archive/2011/01/12/10114...
(The article does mention that the guard pages are set to no read/write/execute)
You're right about the 80/10 split. FF4's rendering speed is an outlier compared to Safari/Chrome/Opera on the same hardware. To better compare the faster browsers I'd need to run multiple emulators per page.
EDIT: b9 improved over 8, not itself.
I didn't mention in the article, but I have run the emulator on the Wii's Opera browser and the PS3--both slow but the Wii is much faster. The XBOX360 hasn't heard about the WWW yet.
For example, when I reported a bug, I was surprised there seemed to be no (obvious) way to search/mark bugs by release. I had no way to describe a bug as "exists in stable but not in dev release" besides adding a textual commentary.
The people handling the bugs seem overwhelmed as well. A large percentage of those bugs are probably stale.
May 1977 has an article on assembling you own computer (IMSAI)
IIRC, the basic notion is that volume is like r^n and area like n * r^(n-1). Quite different when n = 2, 3, ... and not so much at n = 10^23. I never thought of them as spikey but I get the picture now.