Jump to content
Double Fine Action Forums


DFA Backers
  • Content Count

  • Joined

  • Last visited

About nuclear

  • Rank


  • Display Backer Tags
  • URL
  • Location
  • Occupation
    Graphics hacker
  1. Quick bug report: The spinning 3D weathervanes on top of the clouds in cloud colony are drawn incorrectly on some orientations. Obviously they're just two cris-crossing polygons without zbuffering, and when they turn around the back part obscures the front, making it look really weird. Splitting them to 4 non-intersecting polygons and depth-sorting them before drawing would do the trick if you don't want to use the zbuffer just for this.
  2. Hello, I wanted to report a bug for Cave on GNU/Linux. It won't go properly fullscreen, because it doesn't tell the window manager that it wants to become fullscreen. Rather it resizes the window to the size of the display, but the window decorations are left visible. In order to do this properly, you'd have to follow the EWMH (Extended Window Manager Hints) protocol, to notify the window manager that you wish to go fullscreen without decorations. Feel free to use the code I wrote for the freeglut project a few years ago to achieve that: #define _NET_WM_STATE_TOGGLE 2 static int fghEwmhFullscrToggle(void) { XEvent xev; long evmask = SubstructureRedirectMask | SubstructureNotifyMask; xev.type = ClientMessage; xev.xclient.window = fgStructure.CurrentWindow->Window.Handle; /* our window */ xev.xclient.message_type = fgDisplay.pDisplay.State; /* <--- the _NET_WM_STATE Atom */ xev.xclient.format = 32; xev.xclient.data.l[0] = _NET_WM_STATE_TOGGLE; xev.xclient.data.l[1] = fgDisplay.pDisplay.StateFullScreen; /* 1 for fullscreen, 0 for back to normal */ xev.xclient.data.l[2] = 0; /* no second property to toggle */ xev.xclient.data.l[3] = 1; /* source indication: application */ xev.xclient.data.l[4] = 0; /* unused */ /* send the event to the root window */ if(!XSendEvent(fgDisplay.pDisplay.Display, fgDisplay.pDisplay.RootWindow, 0, evmask, &xev;)) { return -1; } return 0; }
  • Create New...