[Bug report] Jitter texture disparition


    Jan 31 2008 | 12:27 pm
    Hi list,
    did anyone experienced texture disparition
    when switching between 2 different jit.window sizes?
    This disparition occured only on textures which
    were used on some GL objects. The other instances of jit.gl.texture
    which are not being used by GL objects remain unaffected.
    Those which disappear make the GL object go black
    (but it is still there : it's OK to send another *still valid* texture's
    name to the GL object)
    I am not using "fullscreen", but [rect x1 y1 x2 y2] message.
    This happens in a really random way.... can't get any stripped
    patch where this is clearly reproductible, but *it happens* often
    enough though.
    If i ever get to this point, i'll surely send a example patch for report,
    but since this issue exists for quite a while now, I thought maybe someone
    encounter this problem's symptoms.
    Thanks for any hint ...
    Vincent
    System :
    Max/MSP 4.6.2 / Jitter 1.6.3
    Windows XP
    CPU : Intel T7200 @ 2Ghz
    RAM 2Go
    NVIDIA GeForce 7900 GTX

    • Feb 01 2008 | 10:07 pm
      Hi ,
      I have similar problem on OSX with jitter 1.6.3
      When I run the fullscreen mode, one of my texture disapears from a jit.gl.gridshape object, but not the others textures/others gl objects. always the same.
      Same thing if I erase one gl object ou create a new one in the context.
      Does anyone could give some advice ?
      Thank you.
    • Feb 02 2008 | 1:33 pm
      it should not happen when gl objects are given the @automatic 0 attribute and rendered in proper order.
    • Feb 02 2008 | 4:09 pm
      Hi,
      could you give help about rendering order questions.
      1) it seems Tut 31 - more render destination - is not update,
      look at page 278 :
      "Each time a jit.gl.render object receives a bang message, it draws all of the GL group objects that have been added to its context.
      It draws the objects in the order in which they were added to the context.
      In this case, the yellow circle was added to the draw context named "B" after the blue circle, so it appears on top."
      It's False : if you select the yellow circle last, the blue one appears on top and the yellow circle is hidden.
      Am I right ?
      I'm on OSX with jitter 1.6.3 and Max 4.6.
      2) since rendering order theorie is not so obvious some clarification are required :
      - how to render in proper order (I mean with gl's) ?
      - how (and why) to use the @automatic 0 ? (nothing about this attribute in jitter tutorial)
      - Does a patch with several gl objects need several renders ?
      - and finally what are the rules with rendering ? (since I'm personally not an open gl specialist or video engineer)
      ...
      So many thanks .
    • Feb 04 2008 | 7:25 am
      Otto: I do use automatic for *all* jitter objects I use ... except
      jit.gl.texture, which I assumed
      to be "banged" every time a GL object using one of them is banged itself....
      Maybe I'm wrong on this point... could any Joshua confirm this? :)
      I'll try some test on stripped patch anyway on this point..
      Still, is it not a strange thing that layers change index while
      recomputing the same overall GL scene, no?
      Now, I understand from what you say, there could be some recalculation
      of the GL scene
      when changing window size, that may move used the jit.gl.texture to a
      postponed position
      in the layers.
      I admit I usually do not bang the gl.texture.
      Derrick Giscloux :
      > 2) since rendering order theorie is not so obvious some clarification are required :
      > - how to render in proper order (I mean with gl's) ?
      1. Bang the objects to be rendered
      2. Bang the render
      >
      > - how (and why) to use the @automatic 0 ? (nothing about this attribute in jitter tutorial)
      >
      How : simply add attribut "@automatic 0" in the object box at creation,
      or turn it on with "automatic 0/1" message sent to any GL object.
      Why : (at least two major reasons, but there's more to this) :
      -- it's no use to compute GL objects you do not want to render,
      which might be the case in any complex patch
      -- it allows to compute several scene with objects rendered at
      different position in on single render tick
      (e.g.: to render the 4 wheels of a car, simply define 1 wheel
      object with, say, a jit.gl.sketch. Then bang the jit.gl.sketch 4 times
      updating the position
      of the wheel for the 4 of them, *then*, bang the render to display the 4
      wheels at one)
      > - Does a patch with several gl objects need several renders ?
      >
      No, given the answer to the previous question
      > - and finally what are the rules with rendering ? (since I'm personally not an open gl specialist or video engineer)
      >
      Be super optimized.
      I personnally still hope I can avoid the metro object... but that
      quickly turns to a real challenge ;)
      There are some essential ideas which you can find in Andrew ' jitter
      recipes, plus some patch from Mr vade in the forum archive which are
      good starting point.
      good luck
      vincent
      www.pucemuse.com
    • Feb 04 2008 | 1:57 pm
    • Feb 04 2008 | 11:57 pm
      the automatic 0 didn't change anything on the texture disparition issue...
      Since it happens quite unpredicably, I guess this is not due to a
      *feature*...
      I couldn't get to a proper repeatable exemple at this point though..
      (still trying, dichotomizing the patch..)
      > could you show an example or point to one ?
      >
      Here you are :