Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

tried to grep the source. but all I could find was

// IID for the nsIRenderingContext interface

// 37762dd8-8df0-48cd-a5d6-24573ffdb5b6

#define NS_IRENDERING_CONTEXT_IID \

{ 0x37762dd8, 0x8df0, 0x48cd, \

  { 0xa5, 0xd6, 0x24, 0x57, 0x3f, 0xfd, 0xb5, 0xb6 } }

which does not mean anything to me.

other example, that also do not work with minefield: http://www.c3dl.org/

Official word: https://wiki.mozilla.org/Canvas:3D




Woot! Got Canvas3D to create a buffer! (I got distracted by NPR's telling of the ADM price-fixing story, sorry).

Okay, the relevant/revelatory code can be seen at:

http://mxr.mozilla.org/mozilla-central/source/content/html/c...

Here's the string being constructed in the getContext method, after some checking:

  nsCString ctxString("@mozilla.org/content/canvas-rendering-context;1?id=");
  ctxString.Append(ctxId);
Where ctxId is, say, "2d".

I'd assume it's some kind of resource naming convention or somesuch ... but, anyway, searching for strings "@mozilla.org/" and canvas and gl ...

You get nsLayoutModule.cpp

  ...
  { "Canvas WebGL Rendering Context",
    NS_CANVASRENDERINGCONTEXTWEBGL_CID,
    "@mozilla.org/content/canvas-rendering-context;1?id=moz-webgl",
    CreateCanvasRenderingContextWebGL },
  ...
bingo! "moz-webgl" WORKS.

The first example I tried fails:

  gl.clearDepth is not a function.
:(

But, anyway, it's a start.


Try using "for in" to iterate through the returned canvas's properties. You'll get all the methods of the canvas. So far this sort of stuff works (OSX Leopard): gl.clearColor(0,0,0,0); gl.clear(gl.COLOR_BUFFER_BIT);


Do their forums even work for you?

I just got back, and I'm needing to look at the google cache of almost every mozilla forum page; I haven't gotten through to their forums a single time yet.

Their 'search moz code' thingy still works -- searching it for WebGL turns up lots ... I mean LOTS ... of code. But even though I've found a list of enums for contexts, etc, I still haven't quite found where the mapping is, or where the actual base getcontext() function is located.

I have powerful procrastination forces pushing me, though.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: