Strange rendering while rotating blended objects...

Hello,
I have a problem (I posted it also elsewhere but hoping for broader solution). I am creating a simulation application with cylindrical object representing glass which are moved around and rotated. When such glassy object is inside another while rotating the world it seems like its surface is inverting. I have prepared simplified example of this (http://zdch.amu.edu.pl/director/pr4.html, http://zdch.amu.edu.pl/director/pr4.dir) with a stack of cylinders with blend 60 that are in interposition with another cylinder. During animation, when seen at front for some short time one can notice a change (http://zdch.amu.edu.pl/director/Picture.png) half of the cylinders in the stack are in front of the big one and three steps further they are in the back while the other half of the stack appears in the front. As far as I tested it doesn't depend on the renderer. It may be reproduced with this code in two following frames and a 3dworld...
first frame:
on exitFrame me
  wd=sprite(2).member
  member(1).resetworld()
  mr=sprite(2).member.newmodelresource("mr", #cylinder, #both)
  mr.bottomRadius = 5
  mr.topRadius = 5          
  mr.height = 30
  mm=wd.newmodel("ml", mr)
  mm.transform.position=vector(0,0,0)
  mm.transform.scale=vector(5,5,5)
  ml=list()
  wd.shader[1].blend=60
  repeat with a=1 to 10
    ml[a]=wd.newmodel("ml"&a, mr)
    ml[a].transform.position=vector(25,a*15-100,0)
    ml[a].transform.scale=vector(5,0.5,5)
  end repeat
end
second frame:
on exitFrame me   member("lab").camera(1).rotate(vector(1,0,0),#world)
go to the frame
end
Thank you for help or comments
Nikodem

Hi Niko,
You're facing the "famous" Z-buffer fighting in Shockwave 3D.
In a few words: to speed up the rendering, the 3D engine is performing a "per model" sorting instead of "per polygon" sorting.
The good part: faster rendering
The bad part: wrong sorting in case of (semi) transparent shaders (materials).
There're 2 workarounds to get rid of this annoying thing:
1) to "explode" the 3d models into a few parts to get more pivots (and better sorting):
http://necromanthus.com/Games/ShockWave/tutorials/Z-buffer.html
2) to use additive blending (presuming your example has a didactical purpose):
http://necromanthus.com/Games/ShockWave/tutorials/Additive_Blending.html
good luck.

Similar Messages

  • Graphics plain 2D objects are not rendered while an action occurred!!!

    Hi, I am designing a game in Swing. Currently I am designing the maze for this game. The maze is generated by using Depth First Search algorithm. In my main JFrame, I have some JPanel. One JPanel, named mazePanel contains the maze. There are some other JPanel also, which contains the JButton for controlling. Following is the mazePanel code.
    import java.awt.Graphics;
    import javax.swing.BorderFactory;
    import javax.swing.JPanel;
    public class MazePanel extends JPanel {
        private MazeGenerator mazeGenerator;
        private boolean startNewMaze = false;
        public MazePanel() {
            setBorder(BorderFactory.createTitledBorder("Maze"));
            setToolTipText("This is the maze");
        public void addNewMaze() {
            startNewMaze = true;
            mazeGenerator = new MazeGenerator();
        @Override
        public void paintComponent(Graphics g) {
            super.paintComponent(g);
            if (startNewMaze) {
                mazeGenerator.generate(g);
                startNewMaze = false;
    } There is one JButton, which calls the method mazePanel.addNewMaze() and set the Boolean startNewMaze to true. After setting the startNewMaze, maze should be generated. i.e. mazeGenerator.generate(g) is inside if() condition. Method mazeGenerator.generate(g) recursively draw the random maze. That is why I don’t want to run this method not more than once.
    Up to this everything is looking fine. But while I am running the main JFrame and clicks on the JButton, maze is not rendered in the mazePanel. Sometimes when I minimize and maximize the JFrame, maze rendered (might be because of repaint() occur). Even if I comment mazeGenerator.generate(g) inside if() condition and put some g.drawString(). The string is not rendered while action performed (i.e.Pressing JButton).
    Where is the problem? Please help.
    Thank you.
    Edited by: 889823 on Jan 28, 2012 3:28 PM (Code was not formatted correctly. I forgot to make use of tag)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    This kind of thing sounds simple but in reality is fairly tricky. I dealt with these kinds of situations for years while learning java, and still sometimes do.
    You only posted a snippet of your code, from which we can't go through and debug what your problem is, but I would just say that this is the general pattern
    1. Receive the event to create a new board. This can in reality be any event that will cause your UI to change
    2. Do whatever processing you need to do to get your Component ready to be painted again. You can do short jobs on the UI thread. For longer jobs, look at the SwingWorker class
    3. When you are done processing and ready to redisplay, call repaint() on your Component. Make sure after you call repaint() that any work being done on the UIThread finishes, so that this thread can then handle the repaint request
    Edited by: tjacobs01 on Jan 28, 2012 1:37 PM

  • Error while activating ODS Object (BIC/WAGLCATODS00 &/BIC/AGLCATODS00 )

    Hi Gurus,
    I am getting an error while activating ods object.
    Error/warning in dict. activator, detailed log --> Detail.
    Row type /BIC/AGLCATODS00 is not active or does not exist.
    Table type /BIC/WAGLCATODS00 could not be activated.
    Table /BIC/AGLCATODS50 could not be activated.
    Table is not yet classified.
    Return code..............: 8.
    DDIC Object TABL /BIC/AGLCATODS00 has not been activated.
    Error when activating ODS Object GLCATODS.
    If any one have come across this issue please help me out in resolving this issue.
    I will reward points.
    Urs,
    Raki.

    Frank,
    There is lot of free space in data base table i already checked it before.... in sm21 it showing database errors.
    Strange i m unable to find out the solution.
    Urs,
    Raki.

  • Rotate an object

    Now there is a way to rotote an object....like clockwise..CW
    or CWW.....
    If I want to rotate an object but not just clockwise....I
    mean for example to move a ball that move around another ball ...
    like 3D not 2D...is it possible ? If not what do I need to do
    to do this ?

    Hi
    Int he first, you can create an animation for the ball while
    moves over the other ball in a layer above the standing ball. add
    the moving ball to a layer beneath the standing ball and created
    the animation part that goes behind the ball in it.
    This is in a brief, but you can search in google.com or
    www.flashkit.com about this rotation effect, I am sure you will
    find alot of its samples.

  • Error while creating info object

    error while creating info object a character
    Info object may be a maximum of  000060 digits...... what would be the error?
    Thanks ALL

    Hi,
    The maximum length supported by one CHAR type infoobject is 60. Check whether you have assigned more.
    If you have to load more length ( more than 60) split the total thing into different infoobjects. Create different infoobjects and split the total thing into them - like 1st 60 char in 1st infoobject, char 61-120 in 2nd infoobject and so on. Then you can again concatenate them.
    Thanks,
    Indrashis

  • Linker Error while creating shared object.

    While creating shared object we got "file processing error".
    Below is our compilation line and the error out put.
    ==================
    /net/icom3/opt//SUNWspro/SC5.0/bin/CC -o fn_ctx_onc_fn_files.so.1 -G -h fn_ctx_onc_fn_files.so.1 -z text -z defs -z combreloc -norunpath -nolib -Qo
    ption ld -R/usr/lib/fn pics/FNSP_filesOrgContext_default.o pics/FNSP_filesFlatContext_default.o pics/fnsp_internal_common.o pics/FNSP_nisAddress.o
    pics/FNSP_nisOrgContext_default.o pics/FNSP_nisFlatContext_default.o pics/FNSP_hash_function.o pics/FNSP_filesHierContext.o pics/FNSP_filesDotC
    ontext.o pics/FNSP_filesFlatContext.o pics/FNSP_filesHUContext.o pics/FNSP_filesWeakSlashContext.o pics/FNSP_filesPrinternameContext.o pics/FNSP_
    filesPrinterObject.o pics/FNSP_filesOrgContext.o pics/FNSP_filesImpl.o pics/fnsp_files_internal.o pics/onc_fn_files.o -lnsl -lc -L/user/vts/X
    FN_CHECK/jnk/usr/lib/fn -lxfn -lfn_spf -lfnsp -lfn_p
    ld: fatal: File processing errors. No output written to fn_ctx_onc_fn_files.so.1
    ==================================
    Thanks in advance.
    -Lokesh MS

    Hi,
    The maximum length supported by one CHAR type infoobject is 60. Check whether you have assigned more.
    If you have to load more length ( more than 60) split the total thing into different infoobjects. Create different infoobjects and split the total thing into them - like 1st 60 char in 1st infoobject, char 61-120 in 2nd infoobject and so on. Then you can again concatenate them.
    Thanks,
    Indrashis

  • Error while creating Temse Object (W2 form in PU19)

    Team,
    When i try to create the w2 in PU19, i am getting the error statingthat ERROR WHILE CREATING TEMSE OBJECT HRLUS01A100900109026.Please advise me in this.(We are maintaining the HRSP-42).It is veryurgent,Expecting your valuable Guidance.Points sure for the answers.
    Regards
    Priya.K

    Hi
    let me know weather r u using any reference object which contain the routinee.
    regards,
    chandra.

  • Error while creating PDF object

    We are using Adobe Interactive Forms with Guided Procedures.  Netweaver 7.0 SP14 (Dual stack Java & Abap).  All was working well it appears until we configured SSL for ADS - don't know for sure if this caused the problem but it is the only change we can identify around the time that our problems began.
    When we attempt to Create an Impersonalized Form we receive the following error -
    Cannot retrieve template structure: Execution ended in an unrecognized state
    When we attempt to test a callable object associated with an interactive form we receive -
    Error while creating PDF object: PDF object could not be created; object returned from ADS is null.
    In both cases the entries in the default trace log are the same -
    Service XMLFormService: Native process (PID=0) /usr/sap/UFD/DVEBMGS02/j2ee/os_libs/adssap/XMLFormService/bin/XMLForm.exe terminated abnormally with error code 134
    PDF object could not be created; object returned from ADS is null
    com.sap.caf.eu.gp.base.exception.EngineException: PDF object could not be created; object returned from ADS is null
    at com.sap.caf.eu.gp.model.iforms.adapter.pdf.AdobePDFAdapter.createInstanceDocument(AdobePDFAdapter.java:542)
    at com.sap.caf.eu.gp.model.iforms.preproc.FormPreprocessor.execute(FormPreprocessor.java:507)
    Like I mentioned earlier this functionality was working successfully in our environment at one time.
    Any guidance in this matter would be greatly appreciated.
    Thanks,
    Joe

    Joe,
    If you originally configured ADS without SSL, I would recommend going back through the ADS Configuration Guide for your NetWeaver stack and make sure all the necessary changes for SSL were made.  I've seen another case where a step was missed in SSL configuration for ADS which caused a form to error.
    If everything looks good based on your SSL configuration, I would recommend creating an OSS Note.
    -Matt

  • Error while saving for Objective setting

    Hi,
    While saving the Objective setting templates i am getting the error as "Table HRPAD605 is not part of the Customizing object PDST T "
    <u>Error documentation is as follows</u>
    <b>Diagnosis</b>
    Entries in table HRPAD605 cannot be edited in connection with customizing object PDST      T as table HRPAD605 does not belong to customizing object PDST      T, according to the object definition.
    <b>System Response</b>
    The function terminates.
    <b>Procedure</b>
    Check whether the entered objects and keys are correct.Then check in the Implementation Guide whether the object was created correctly.
    Correct the object definition or the entry for the Transport Organizer interface.
    Thanks

    Hello,
    Most likely the is an inconsistency with the transport objects PDST and PDWS. Please run RHSOBJCH to correct this inconsistency.
    Afterwards you should be able to transport the templates via the catalog or via RHMOVE30. Please make sure that the category ID in the target system is the same otherwise you won't be able to locate the template.
    The report RHSOBJCH corrects the missing HR entries in the OBJS table.
    This step you need to perform only once. For OSA you need to overtake
    *5020 up to *5026, also PAD605,606 and 607 references.
    When you have done this (as said, only need to do it once) you can transport the categories and templates via the phap_catalog_pa transaction (righ-mouse click on the to be transported object).
    Hope this helps,
    Regards and Groetjes,
    Maurice

  • Error while activating ODS Object (urgent)

    Hi Gurus,
    I am getting an error while activating ods object.
    Error/warning in dict. activator, detailed log  --> Detail.
    Row type /BIC/AGLCATODS00 is not active or does not exist.
    Table type /BIC/WAGLCATODS00 could not be activated.
    Table /BIC/AGLCATODS50 could not be activated.
    Table is not yet classified.
    Return code..............: 8.     
    DDIC Object TABL /BIC/AGLCATODS00 has not been activated.
    Error when activating ODS Object GLCATODS.
    If any one have come across this issue please help me out in resolving this issue.
    I will reward points.
    Urs,
    Raki.

    Hi venkat,
    There are only 3 info objects which  i have created it and activated, only those i am pulling in the new ods but its throwing the same error what ever i do changes.
    Is this issue is related to any authorization concerned?
    Urs,
    Raki.

  • Strange error while executing a stored procedure: Incorrect syntax near '@p0'

    All, I am getting a strange error while executing a stored procedure: Incorrect syntax near '@p0'  using JDBC CallableStatment.
    Here is my code...
    CallableStatement cStmt = con.prepareCall("{call SET CHAINED ON EXEC <dbName>.<schemaName>.<SPName> (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}");
    cStmt.setString(1, "2012005881");
    cStmt.setString(2, "07");
    cStmt.setString(3, "10");
    cStmt.setString(4, "Case title");
    cStmt.setString(5, "Open");
    java.sql.Date dt1 = new java.sql.Date(2014,10,20);
    cStmt.setDate(6, dt1);
    cStmt.setString(7, "01");
    cStmt.setString(8, "N");
    cStmt.setString(9, "ADA Test");
    cStmt.setString(10, "N");
    cStmt.setString(11, "English");
    cStmt.setString(12, "N");
    cStmt.setString(13, "N");
    cStmt.setString(14, "N");
    cStmt.setString(15, "N");
    cStmt.setString(16, "N");
    cStmt.setString(17, "N");
    cStmt.setString(18, "07");
    cStmt.setString(19, "10");
    cStmt.setString(20, "juache0");
    java.sql.Date dt2 = new java.sql.Date(2014,10,20);
    java.sql.Date dt3 = new java.sql.Date(2014,10,20);
    cStmt.setDate(21, dt2);
    cStmt.setDate(22, dt3);
    cStmt.setString(23, "userid0");
    cStmt.setString(24, "");
    cStmt.setString(25, "");  
    cStmt.setString(26, "");
    java.math.BigDecimal bg1 = new java.math.BigDecimal(10);
    cStmt.setBigDecimal(27, bg1);
    cStmt.setString(28, "userid");
    cStmt.setString(29, "userid");
    int hadResults = cStmt.executeUpdate();
    Your help is greatly appreciated.
    I am executing the above using Jconnect3.0 driver, inside WebSphere Application Server V8.0
    Thanks
    Nags

    NOTE: I don't work with JDBC/jConnect so (at this point) just some questions ...
    1 - are you sending this to ASE, ASA, IQ, or some other RDBMS?
    2 - what is the value of <schemaname>?
    3 - do you have other prepareCall() instances that successfully call a stored proc? [would be interesting to see if there's a difference in the format of the calls]
    A quick google search shows a couple ways to submit a stored proc execution to the RDBMS, with the format depending on the format expected by the target RDBMS.
    I'm wondering if you really need/want the parentheses around the argument list, ie, what happens if you change
    from
    -- parentheses around args
    EXEC <dbName>.<schemaName>.<SPName> ( ?,?,?,?,?,...,? )
    to
    -- no parentheses around args
    EXEC <dbName>.<schemaName>.<SPName> ?,?,?,?,?,...,?
    In ASE if I wrap the parameters in parentheses I get the same error you're getting:
    ================== w/ parentheses => error
    1> sp_who (sa)
    2> go
    Msg 102, Level 15, State 1:
    Server 'CC1_V1', Line 1:
    Incorrect syntax near 'sa'.   <<=== sa == @p0 ??
    ================== w/out parentheses => works
    1> sp_who sa
    2> go
    fid spid status  loginame origname ...
       0   17 running sa       sa       ...
    ==================

  • Error : While Importing the Objects in Quality

    Dear all,
           I'm facing some error while transporting the Objects to quality server. The error's like
    Start of the after-import method RS_ISFS_AFTER_IMPORT for object type(s) ISFS (Activation Mode)
    Source system RD1100LS does not exist
    Source system RD1100LS does not exist
    Source system RD1100LS does not exist
    Source system RD1110LS does not exist
    Start of the after-import method RS_ISTS_AFTER_IMPORT for object type(s) ISTS (Activation Mode)
    There is no DataSource with these attributes
    There is no DataSource with these attributes
    There is no DataSource with these attributes
    There is no DataSource with these attributes
    There is no DataSource with these attributes
    There is no DataSource with these attributes
        Anyone suggest me how to solve this error..,
    Thanx in Advance..
    Regards,
    Saran

    Hi saran,
    Check the source system connectivity of the Quality system. Also check whether you have transported the datasources related to those objects that you transported from DEV to QAS.
    First you need to transport the Datasources created in R/3 and then replicate them in QAS/Prod and then transport the objects in BW from DEV to QAS/Prod.
    Check all these things and if still the problem persists... Refer to the below threads which may help u...
    Transport Problem - Reference to Transfer Structure not available
    No Source system exist
    Assign points if this helps u...
    Regards,
    KK.

  • While transporting the objects from dev to q or production what are the err

    Hi all,
    While transporting the objects from one system to another what are the errors we get?
    Thanks
    Kiran Kumar

    Hi Kiran,
    The purpose of the Forums is to help people with problems, not to "fish" for answers to what appear to be interview questions. There are many ways to become educated in SAP Administration, such as training classes and help documetnation. Please choose these avenues for your questions instead of making these kind of posts in the Forums.
    Best Regards,
    Matt

  • OBJECT SKIPPED while transporting the objects from DEV to QA.

    Hi All,
    While transporting the objects to Quality, I'm getting a warning saying Objects are skipped.
    Can anyone please explain how to get rid of this error? We are facing this issue almost for all the transports which we are moving and the objects do not get transported to the next environment. We have to ask BASIS to use overwrite functionality while transporting to fix this each and every time we face an error.
    If any SAP notes are available then please share it to me.
    Thanks in Advance.

    Hi Srikanth,
    Objects of the selected object types exist in your system as changeable even if this system is globally set to not changeable. As a result, these objects are no longer connected to the transport system. 
    check here........
    http://help.sap.com/saphelp_nw04/helpdata/en/0e/a7343e8c7f6329e10000000a114084/content.htm
    for this try contact basis team.
    Thanks,
    Vijay.

  • Unable to view settings tab in one GPO. "An error occurred while generating report: Object reference not set to an instance of an object."

    I am the owner of this GPO and I can view the settings tab in any other GPO. But, I get the following message when I try to view the settings tab in one particular GPO:
    An error occurred while generating report:
    Object reference not set to an instance of an object.
    Other posts I look at reference the same error, but with different circumstances, and thus, they specify that the hotfix is for to fix the error under
    those circumstances.
    I'm accessing GPMC on a Win 7 SP1 machine. DC is Server 2012 Standard.

    > Since I have to go through Edit to see the settings, and peruse the
    > entire massive folder of settings to try to identify the bad one, it has
    > been slow-going and I haven't found it yet.
    You can filter ADM templates to show configured ones only, and you can
    use the "show all settings" node. This will speed the work up - a little
    bit at least :)
    Martin
    Mal ein
    GUTES Buch über GPOs lesen?
    NO THEY ARE NOT EVIL, if you know what you are doing:
    Good or bad GPOs?
    And if IT bothers me - coke bottle design refreshment :))

Maybe you are looking for