Lightpoints, Performer and Multisampling

New Message Reply Date view Thread view Subject view Author view

Simon Bennett (simonb++at++wormald.COM.AU)
Tue, 14 Feb 1995 19:25:55 +1100 (EST)


Hi,

  I'm currently working with lightpoints from within Performer, and I'm
  running up against a few problems. I don't seem to be able to size
  pfLightPoint nodes the way I'd like to. No matter what values are
  passed to pfLPointSize() the points on the screen never appear to
  get much larger than about 4 pixels. If pfAntialias() is set to
  PFAA_OFF however the lightpoints size correctly but are rendered as
  squares, which is not acceptable for my application. I've been
  experimenting generally with IRIS GL points and have found that if I
  use pntsmooth() and blendfunction() I get the results I want (pretty
  much), but that these calls are incompatible with the multi-sampling
  of the Reality Engine. The GL documentation states that "Until
  circles are implemented, points are sampled into the multisample
  buffer as squares centered on the exact point location" - which I've
  confirmed as meaning that under multi-sampling points are square.

  The pfAntialias() manpage has a curious little statement:

  "In addition, pfAntialias will enable a special hardware mode that
  efficiently renders GL points (with bgnpoint and endpoint) using
  multisampled circles rather than squares"

  - this seems to be true and quite nice - excepting that the points
  never seem to get any bigger than 4 or so pixels... Does anybody
  know what this "special hardware mode" is? The pfAntialias()
  manpage also mentions a mssample() function - but this doesn't seem
  to be documented anywhere.

  I've tried rendering "large round" lightpoints by means of pre and
  post draw callbacks on lightpoint node, which disable/re-enable
  multisampling and turn of pntsmooth()ing etc... but as you can
  imagine this doesn't work properly because of the different
  z-buffers.

  Anybody got any bright ideas how I can easily render "large round"
  lightpoints? Or point out some obvious mistakes that I might have
  made? Explain the Performer restriction on lightpoint size? (Which
  is *not* the same as described in the pntsize() manpage!)

  I'm trying this stuff on a Onyx RE^2 with 2RM4's under IRIX 5.2 and
  Performer 1.2.... BTW - I may be dropping down to a VTX system
  soon... I haven't seen (or have missed) references to its point
  size abilities... could somebody please tell me how this will affect
  point rendering?

  Much thanx in advance for any and all help...

+--------------------------------------------------------------------------------+
    Simon Bennett simonb++at++wormald.com.au
    Wormald Technology Advanced Systems Engineering Ph: +61 2 981 0611 (x512)

   Computer Terms: hardware - the part of a computer system that one can kick


New Message Reply Date view Thread view Subject view Author view

This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:50:57 PDT

This message has been cleansed for anti-spam protection. Replace '++at++' in any mail addresses with the '@' symbol.