Using TUpdatingMesh

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

Using TUpdatingMesh

Phua Khai Fong
I would like to ask the proper steps to use and understand TUpdatingMesh better. The way I do it is :-

-Create a subclass
-Initialize variables
-create method updateMesh
   -set rendering mode
   -set vertexBuffer, normalBuffer and textcoordBuffer size
   -generate vertex information
   -set faceGroups to assemble mesh

My questions are:-

1) Can any collection be used for faceGroups or only IntegerArray? (Please provide more info about setting up the IntegerArray too, not quite clear bout it)
2) How can I include GL calls? e.g. setting line width?point size?
3) Can I set different rendering modes for 1 mesh?

Thanks,

Fong

Reply | Threaded
Open this post in threaded view
|

Render Croquet world in multiple viewports

Hong Yi
Hello,

We are thinking to run Croquet in a 15-foot diameter tilt dome display which
is driven by 4 SXGA+ projectors. We can run C++/OpenGL apps by rendering the
geometries into 4 viewports corresponding to 4 projectors with dome-specific
parameters such as FOV, yaw, pitch, roll for each view. The C++/OpenGL code
snippet that runs on the dome is shown below for easy understanding on what
we need to do to get an app rendering graphics on the dome. My question is:
can I do the same to enable a Croquet app to render a virtual world on the
dome? If the answer is yes, how can I do this? Specifically, where and in
which class can I set up multiple rendering viewports and their specific
camera transformation and perspective projections in Croquet as I did in
C++/OpenGL?

Another question is: how I can run a Croquet app standalone without running
it within Squeak environment so that Croquet app window will not be confined
within Squeak environment window?

Thanks very much for any insight and suggestions on this.

Best,

Hong


Below is the C++/OpenGL code snippet for enabling it to run on the dome:
-----------------------------------------------------------
for(i=0; i<4; i++)
{
        switch(i)
        {
                case 0:
                        glViewport(0, 0, domeWidth/2, domeHeight/2);

                        break;
                case 1:
                        glViewport(domeWidth/2, 0, domeWidth/2,
domeHeight/2);  
                        break;
                case 2:
                        glViewport(0, domeWidth/2, domeWidth/2,
domeHeight/2);                
                        break;
                case 3:
                        glViewport(domeWidth/2, domeHeight/2, domeWidth/2,
domeHeight/2);                
                        break;
        }
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();        
        gluPerspective(camera.FOV, camera.aspect, 1.0, 100.0);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
        applyCameraTrans(camera.yaw[i], camera.pitch[i], camera.roll[i], 0,
0, camera.vp.z);
        renderGeometry();
}
-----------------------------------------------------------



Reply | Threaded
Open this post in threaded view
|

Re: Render Croquet world in multiple viewports

Yoshiki Ohshima-2
  Hello,

At Fri, 1 Aug 2008 17:23:23 -0400,
Hong Yi wrote:
>
> Hello,
>
> We are thinking to run Croquet in a 15-foot diameter tilt dome display which
> is driven by 4 SXGA+ projectors.

  Sounds cool!

> We can run C++/OpenGL apps by rendering the
> geometries into 4 viewports corresponding to 4 projectors with dome-specific
> parameters such as FOV, yaw, pitch, roll for each view. The C++/OpenGL code
> snippet that runs on the dome is shown below for easy understanding on what
> we need to do to get an app rendering graphics on the dome. My question is:
> can I do the same to enable a Croquet app to render a virtual world on the
> dome?

  It looks from the code that you really don't have to too much
parameter tweak for individual projector.  So, I wonder that how well
it would look when:

  - You just set up four computers and run Croquet on each.
  - Join them into the same Croquet session.
  - Make three of them just "follow" another one.  I.e., the
    avatar's position is always same as the another one.  (Let us call
    the another one "master".)
  - Change the code a bit so that the other tree avatars always look at
    specified relative directions from the master.
  - Just move around the master and all four display shows the right
    thing.

The biggest question would be the four projectors really look
synchronized or not.

> If the answer is yes, how can I do this? Specifically, where and in
> which class can I set up multiple rendering viewports and their specific
> camera transformation and perspective projections in Croquet as I did in
> C++/OpenGL?

  My memory in Croquet's detail is rusty, but there is/was a feature
where an avatar can hop on and off a vehicle.  In the SDK, for
example, there are methods like TVehicle>>hopOn:.  If it works, like
it does, adding avatar to somebody else's frame would work.

> Another question is: how I can run a Croquet app standalone without running
> it within Squeak environment so that Croquet app window will not be confined
> within Squeak environment window?

  If I understand the question correctly... Alt-click the 3D view to
get the "halo".  The red circle button bring up the menu, in the menu,
you can choose "toggle full screen" to go to the full screen mode.
Or, just make the 3D view size equal to the Squeak's window and you
can't tell it is running within Squeak.

-- Yoshiki
Reply | Threaded
Open this post in threaded view
|

RE: Render Croquet world in multiple viewports

Hong Yi
Hi Yoshiki,

Thanks very much for your reply.

Since our dome display is set up driven by one computer with graphics cards
that each drives one of the four projectors, setting up four computers and
running Croquet on each has to change our current dome set up which will not
apply well (as we have several other C++/OpenGL apps running on the current
dome set up by tweaking parameters to render geometries into 4 viewports).
But thanks for the good ideas and it might just work although I also doubt
whether four projectors would look synchronized when they are controlled by
4 computers. I am still thinking there should be a way to tweak projection
and viewing parameters to render geometries into 4 viewports in Croquet. But
I am not familiar enough with Croquet code to know whether this is indeed
doable and how to do it. Hope to get more suggestions on this so that we
could really give it a try to run Croquet in our dome display which would be
really cool.

Since our tilt dome display is driven by one computer with graphics cards
driving four projectors, full screen option would not work (full screen mode
in this case will only occupy the full projection area of the first
projector unaware of other 3 projection areas). I am looking for ways to run
a Croquet app independent with Squeak environment so that I can drag the
Croquet window size to fill the whole dome once multiple screens are
configured properly to form a unified screen space. It would be great if
somebody can point me to some document that instructs how to build a
standalone executable Croquet app.

Thanks again and hope to get more ideas and suggestions on how to do this in
our current dome setup.

Best,

Hong

 


-----Original Message-----
From: Yoshiki Ohshima [mailto:[hidden email]]
Sent: Monday, August 04, 2008 5:16 AM
To: [hidden email]
Subject: Re: [croquet-dev] Render Croquet world in multiple viewports

  Hello,

At Fri, 1 Aug 2008 17:23:23 -0400,
Hong Yi wrote:
>
> Hello,
>
> We are thinking to run Croquet in a 15-foot diameter tilt dome display
which
> is driven by 4 SXGA+ projectors.

  Sounds cool!

> We can run C++/OpenGL apps by rendering the
> geometries into 4 viewports corresponding to 4 projectors with
dome-specific
> parameters such as FOV, yaw, pitch, roll for each view. The C++/OpenGL
code
> snippet that runs on the dome is shown below for easy understanding on
what
> we need to do to get an app rendering graphics on the dome. My question
is:
> can I do the same to enable a Croquet app to render a virtual world on the
> dome?

  It looks from the code that you really don't have to too much
parameter tweak for individual projector.  So, I wonder that how well
it would look when:

  - You just set up four computers and run Croquet on each.
  - Join them into the same Croquet session.
  - Make three of them just "follow" another one.  I.e., the
    avatar's position is always same as the another one.  (Let us call
    the another one "master".)
  - Change the code a bit so that the other tree avatars always look at
    specified relative directions from the master.
  - Just move around the master and all four display shows the right
    thing.

The biggest question would be the four projectors really look
synchronized or not.

> If the answer is yes, how can I do this? Specifically, where and in
> which class can I set up multiple rendering viewports and their specific
> camera transformation and perspective projections in Croquet as I did in
> C++/OpenGL?

  My memory in Croquet's detail is rusty, but there is/was a feature
where an avatar can hop on and off a vehicle.  In the SDK, for
example, there are methods like TVehicle>>hopOn:.  If it works, like
it does, adding avatar to somebody else's frame would work.

> Another question is: how I can run a Croquet app standalone without
running
> it within Squeak environment so that Croquet app window will not be
confined
> within Squeak environment window?

  If I understand the question correctly... Alt-click the 3D view to
get the "halo".  The red circle button bring up the menu, in the menu,
you can choose "toggle full screen" to go to the full screen mode.
Or, just make the 3D view size equal to the Squeak's window and you
can't tell it is running within Squeak.

-- Yoshiki


Reply | Threaded
Open this post in threaded view
|

Re: Render Croquet world in multiple viewports

David Faught
In reply to this post by Hong Yi
Hi,

This will definitely take some Squeak/Croquet code development work.
Since Croquet is an SDK anyway, that works out well!  I would approach
this by attaching multiple TCameras to the avatar, so the cameras
retain their initial relative vector to the avatar's position as the
avatar moves about.  Unfortunately, I'm not sure exactly how to get
all the cameras to render at the same time.

Croquet is written in Squeak, so it is not really possible to run
Croquet without Squeak.  As far as the windows/panels that are
displayed, it should be fairly easy to make the Squeak window
full-screen as Yoshiki suggested, and then make each Croquet camera
viewport window take only the proper portion of the Squeak window.
The Squeak window can be made full-screen independently of the Croquet
window.  The Croquet window(s) can be adjusted within the Squeak
window by bringing up the halo as Yoshiki pointed out, and then moving
or resizing using the appropriate icons.

It might be possible to get Croquet to render within the Host Windows
support that Squeak has, but I don't recall hearing of anyone getting
that to work.

Dave

On 8/1/08, Hong Yi <[hidden email]> wrote:

> Hello,
>
> We are thinking to run Croquet in a 15-foot diameter tilt dome display which
> is driven by 4 SXGA+ projectors. We can run C++/OpenGL apps by rendering the
> geometries into 4 viewports corresponding to 4 projectors with dome-specific
> parameters such as FOV, yaw, pitch, roll for each view. The C++/OpenGL code
> snippet that runs on the dome is shown below for easy understanding on what
> we need to do to get an app rendering graphics on the dome. My question is:
> can I do the same to enable a Croquet app to render a virtual world on the
> dome? If the answer is yes, how can I do this? Specifically, where and in
> which class can I set up multiple rendering viewports and their specific
> camera transformation and perspective projections in Croquet as I did in
> C++/OpenGL?
>
> Another question is: how I can run a Croquet app standalone without running
> it within Squeak environment so that Croquet app window will not be confined
> within Squeak environment window?
>
> Thanks very much for any insight and suggestions on this.
>
> Best,
>
> Hong
>
>
> Below is the C++/OpenGL code snippet for enabling it to run on the dome:
> -----------------------------------------------------------
> for(i=0; i<4; i++)
> {
>        switch(i)
>        {
>                case 0:
>                        glViewport(0, 0, domeWidth/2, domeHeight/2);
>
>                        break;
>                case 1:
>                        glViewport(domeWidth/2, 0, domeWidth/2,
> domeHeight/2);
>                        break;
>                case 2:
>                        glViewport(0, domeWidth/2, domeWidth/2,
> domeHeight/2);
>                        break;
>                case 3:
>                        glViewport(domeWidth/2, domeHeight/2, domeWidth/2,
> domeHeight/2);
>                        break;
>        }
>        glMatrixMode(GL_PROJECTION);
>        glLoadIdentity();
>        gluPerspective(camera.FOV, camera.aspect, 1.0, 100.0);
>        glMatrixMode(GL_MODELVIEW);
>        glLoadIdentity();
>        applyCameraTrans(camera.yaw[i], camera.pitch[i], camera.roll[i], 0,
> 0, camera.vp.z);
>        renderGeometry();
> }
> -----------------------------------------------------------
>
>
>
>
Reply | Threaded
Open this post in threaded view
|

RE: Render Croquet world in multiple viewports

Hong Yi
Hi Dave,

Thanks very much for your insights and suggestions on this. I will let you
know if I can get it working on our dome given that my management allows me
to spend time on exploring this.

Thanks again,

Best,

Hong



-----Original Message-----
From: David Faught [mailto:[hidden email]]
Sent: Monday, August 04, 2008 11:35 AM
To: Hong Yi
Cc: [hidden email]
Subject: Re: [croquet-dev] Render Croquet world in multiple viewports

Hi,

This will definitely take some Squeak/Croquet code development work.
Since Croquet is an SDK anyway, that works out well!  I would approach
this by attaching multiple TCameras to the avatar, so the cameras
retain their initial relative vector to the avatar's position as the
avatar moves about.  Unfortunately, I'm not sure exactly how to get
all the cameras to render at the same time.

Croquet is written in Squeak, so it is not really possible to run
Croquet without Squeak.  As far as the windows/panels that are
displayed, it should be fairly easy to make the Squeak window
full-screen as Yoshiki suggested, and then make each Croquet camera
viewport window take only the proper portion of the Squeak window.
The Squeak window can be made full-screen independently of the Croquet
window.  The Croquet window(s) can be adjusted within the Squeak
window by bringing up the halo as Yoshiki pointed out, and then moving
or resizing using the appropriate icons.

It might be possible to get Croquet to render within the Host Windows
support that Squeak has, but I don't recall hearing of anyone getting
that to work.

Dave

On 8/1/08, Hong Yi <[hidden email]> wrote:
> Hello,
>
> We are thinking to run Croquet in a 15-foot diameter tilt dome display
which
> is driven by 4 SXGA+ projectors. We can run C++/OpenGL apps by rendering
the
> geometries into 4 viewports corresponding to 4 projectors with
dome-specific
> parameters such as FOV, yaw, pitch, roll for each view. The C++/OpenGL
code
> snippet that runs on the dome is shown below for easy understanding on
what
> we need to do to get an app rendering graphics on the dome. My question
is:
> can I do the same to enable a Croquet app to render a virtual world on the
> dome? If the answer is yes, how can I do this? Specifically, where and in
> which class can I set up multiple rendering viewports and their specific
> camera transformation and perspective projections in Croquet as I did in
> C++/OpenGL?
>
> Another question is: how I can run a Croquet app standalone without
running
> it within Squeak environment so that Croquet app window will not be
confined

> within Squeak environment window?
>
> Thanks very much for any insight and suggestions on this.
>
> Best,
>
> Hong
>
>
> Below is the C++/OpenGL code snippet for enabling it to run on the dome:
> -----------------------------------------------------------
> for(i=0; i<4; i++)
> {
>        switch(i)
>        {
>                case 0:
>                        glViewport(0, 0, domeWidth/2, domeHeight/2);
>
>                        break;
>                case 1:
>                        glViewport(domeWidth/2, 0, domeWidth/2,
> domeHeight/2);
>                        break;
>                case 2:
>                        glViewport(0, domeWidth/2, domeWidth/2,
> domeHeight/2);
>                        break;
>                case 3:
>                        glViewport(domeWidth/2, domeHeight/2, domeWidth/2,
> domeHeight/2);
>                        break;
>        }
>        glMatrixMode(GL_PROJECTION);
>        glLoadIdentity();
>        gluPerspective(camera.FOV, camera.aspect, 1.0, 100.0);
>        glMatrixMode(GL_MODELVIEW);
>        glLoadIdentity();
>        applyCameraTrans(camera.yaw[i], camera.pitch[i], camera.roll[i], 0,
> 0, camera.vp.z);
>        renderGeometry();
> }
> -----------------------------------------------------------
>
>
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Render Croquet world in multiple viewports

Bert Freudenberg
In reply to this post by Hong Yi
I don't have the code in front of me, but the "rear-view mirror"  
should be in the image, it used to be toggles by some hotkey. It  
renders a different view of the scene as an "overlay". You can  
register multiple overlays with your main camera, and each can draw  
into a different viewport (still one window only).

- Bert -

Am 04.08.2008 um 15:47 schrieb "Hong Yi" <[hidden email]>:

> Hi Yoshiki,
>
> Thanks very much for your reply.
>
> Since our dome display is set up driven by one computer with  
> graphics cards
> that each drives one of the four projectors, setting up four  
> computers and
> running Croquet on each has to change our current dome set up which  
> will not
> apply well (as we have several other C++/OpenGL apps running on the  
> current
> dome set up by tweaking parameters to render geometries into 4  
> viewports).
> But thanks for the good ideas and it might just work although I also  
> doubt
> whether four projectors would look synchronized when they are  
> controlled by
> 4 computers. I am still thinking there should be a way to tweak  
> projection
> and viewing parameters to render geometries into 4 viewports in  
> Croquet. But
> I am not familiar enough with Croquet code to know whether this is  
> indeed
> doable and how to do it. Hope to get more suggestions on this so  
> that we
> could really give it a try to run Croquet in our dome display which  
> would be
> really cool.
>
> Since our tilt dome display is driven by one computer with graphics  
> cards
> driving four projectors, full screen option would not work (full  
> screen mode
> in this case will only occupy the full projection area of the first
> projector unaware of other 3 projection areas). I am looking for  
> ways to run
> a Croquet app independent with Squeak environment so that I can drag  
> the
> Croquet window size to fill the whole dome once multiple screens are
> configured properly to form a unified screen space. It would be  
> great if
> somebody can point me to some document that instructs how to build a
> standalone executable Croquet app.
>
> Thanks again and hope to get more ideas and suggestions on how to do  
> this in
> our current dome setup.
>
> Best,
>
> Hong
>
>
>
>
> -----Original Message-----
> From: Yoshiki Ohshima [mailto:[hidden email]]
> Sent: Monday, August 04, 2008 5:16 AM
> To: [hidden email]
> Subject: Re: [croquet-dev] Render Croquet world in multiple viewports
>
>  Hello,
>
> At Fri, 1 Aug 2008 17:23:23 -0400,
> Hong Yi wrote:
>>
>> Hello,
>>
>> We are thinking to run Croquet in a 15-foot diameter tilt dome  
>> display
> which
>> is driven by 4 SXGA+ projectors.
>
>  Sounds cool!
>
>> We can run C++/OpenGL apps by rendering the
>> geometries into 4 viewports corresponding to 4 projectors with
> dome-specific
>> parameters such as FOV, yaw, pitch, roll for each view. The C++/
>> OpenGL
> code
>> snippet that runs on the dome is shown below for easy understanding  
>> on
> what
>> we need to do to get an app rendering graphics on the dome. My  
>> question
> is:
>> can I do the same to enable a Croquet app to render a virtual world  
>> on the
>> dome?
>
>  It looks from the code that you really don't have to too much
> parameter tweak for individual projector.  So, I wonder that how well
> it would look when:
>
>  - You just set up four computers and run Croquet on each.
>  - Join them into the same Croquet session.
>  - Make three of them just "follow" another one.  I.e., the
>    avatar's position is always same as the another one.  (Let us call
>    the another one "master".)
>  - Change the code a bit so that the other tree avatars always look at
>    specified relative directions from the master.
>  - Just move around the master and all four display shows the right
>    thing.
>
> The biggest question would be the four projectors really look
> synchronized or not.
>
>> If the answer is yes, how can I do this? Specifically, where and in
>> which class can I set up multiple rendering viewports and their  
>> specific
>> camera transformation and perspective projections in Croquet as I  
>> did in
>> C++/OpenGL?
>
>  My memory in Croquet's detail is rusty, but there is/was a feature
> where an avatar can hop on and off a vehicle.  In the SDK, for
> example, there are methods like TVehicle>>hopOn:.  If it works, like
> it does, adding avatar to somebody else's frame would work.
>
>> Another question is: how I can run a Croquet app standalone without
> running
>> it within Squeak environment so that Croquet app window will not be
> confined
>> within Squeak environment window?
>
>  If I understand the question correctly... Alt-click the 3D view to
> get the "halo".  The red circle button bring up the menu, in the menu,
> you can choose "toggle full screen" to go to the full screen mode.
> Or, just make the 3D view size equal to the Squeak's window and you
> can't tell it is running within Squeak.
>
> -- Yoshiki
>
>
Reply | Threaded
Open this post in threaded view
|

RE: Render Croquet world in multiple viewports

Hong Yi

Hi Bert,

This sound like a perfect solution to our problem. Could you let me know in
which classes this "rear-view mirror overlay" functionality resides? Which
Croquet demo or app in the image has this "rear-view mirror" function so
that I can take a look at it?

Thanks so much for the great info! I see light shining through now.

Best,

Hong

-----Original Message-----
From: Bert Freudenberg [mailto:[hidden email]]
Sent: Tuesday, August 05, 2008 5:24 AM
To: [hidden email]; Hong Yi
Cc: <[hidden email]>; Yoshiki Ohshima
Subject: Re: [croquet-dev] Render Croquet world in multiple viewports

I don't have the code in front of me, but the "rear-view mirror"  
should be in the image, it used to be toggles by some hotkey. It  
renders a different view of the scene as an "overlay". You can  
register multiple overlays with your main camera, and each can draw  
into a different viewport (still one window only).

- Bert -

Am 04.08.2008 um 15:47 schrieb "Hong Yi" <[hidden email]>:

> Hi Yoshiki,
>
> Thanks very much for your reply.
>
> Since our dome display is set up driven by one computer with  
> graphics cards
> that each drives one of the four projectors, setting up four  
> computers and
> running Croquet on each has to change our current dome set up which  
> will not
> apply well (as we have several other C++/OpenGL apps running on the  
> current
> dome set up by tweaking parameters to render geometries into 4  
> viewports).
> But thanks for the good ideas and it might just work although I also  
> doubt
> whether four projectors would look synchronized when they are  
> controlled by
> 4 computers. I am still thinking there should be a way to tweak  
> projection
> and viewing parameters to render geometries into 4 viewports in  
> Croquet. But
> I am not familiar enough with Croquet code to know whether this is  
> indeed
> doable and how to do it. Hope to get more suggestions on this so  
> that we
> could really give it a try to run Croquet in our dome display which  
> would be
> really cool.
>
> Since our tilt dome display is driven by one computer with graphics  
> cards
> driving four projectors, full screen option would not work (full  
> screen mode
> in this case will only occupy the full projection area of the first
> projector unaware of other 3 projection areas). I am looking for  
> ways to run
> a Croquet app independent with Squeak environment so that I can drag  
> the
> Croquet window size to fill the whole dome once multiple screens are
> configured properly to form a unified screen space. It would be  
> great if
> somebody can point me to some document that instructs how to build a
> standalone executable Croquet app.
>
> Thanks again and hope to get more ideas and suggestions on how to do  
> this in
> our current dome setup.
>
> Best,
>
> Hong
>
>
>
>
> -----Original Message-----
> From: Yoshiki Ohshima [mailto:[hidden email]]
> Sent: Monday, August 04, 2008 5:16 AM
> To: [hidden email]
> Subject: Re: [croquet-dev] Render Croquet world in multiple viewports
>
>  Hello,
>
> At Fri, 1 Aug 2008 17:23:23 -0400,
> Hong Yi wrote:
>>
>> Hello,
>>
>> We are thinking to run Croquet in a 15-foot diameter tilt dome  
>> display
> which
>> is driven by 4 SXGA+ projectors.
>
>  Sounds cool!
>
>> We can run C++/OpenGL apps by rendering the
>> geometries into 4 viewports corresponding to 4 projectors with
> dome-specific
>> parameters such as FOV, yaw, pitch, roll for each view. The C++/
>> OpenGL
> code
>> snippet that runs on the dome is shown below for easy understanding  
>> on
> what
>> we need to do to get an app rendering graphics on the dome. My  
>> question
> is:
>> can I do the same to enable a Croquet app to render a virtual world  
>> on the
>> dome?
>
>  It looks from the code that you really don't have to too much
> parameter tweak for individual projector.  So, I wonder that how well
> it would look when:
>
>  - You just set up four computers and run Croquet on each.
>  - Join them into the same Croquet session.
>  - Make three of them just "follow" another one.  I.e., the
>    avatar's position is always same as the another one.  (Let us call
>    the another one "master".)
>  - Change the code a bit so that the other tree avatars always look at
>    specified relative directions from the master.
>  - Just move around the master and all four display shows the right
>    thing.
>
> The biggest question would be the four projectors really look
> synchronized or not.
>
>> If the answer is yes, how can I do this? Specifically, where and in
>> which class can I set up multiple rendering viewports and their  
>> specific
>> camera transformation and perspective projections in Croquet as I  
>> did in
>> C++/OpenGL?
>
>  My memory in Croquet's detail is rusty, but there is/was a feature
> where an avatar can hop on and off a vehicle.  In the SDK, for
> example, there are methods like TVehicle>>hopOn:.  If it works, like
> it does, adding avatar to somebody else's frame would work.
>
>> Another question is: how I can run a Croquet app standalone without
> running
>> it within Squeak environment so that Croquet app window will not be
> confined
>> within Squeak environment window?
>
>  If I understand the question correctly... Alt-click the 3D view to
> get the "halo".  The red circle button bring up the menu, in the menu,
> you can choose "toggle full screen" to go to the full screen mode.
> Or, just make the 3D view size equal to the Squeak's window and you
> can't tell it is running within Squeak.
>
> -- Yoshiki
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Render Croquet world in multiple viewports

sathyas
In reply to this post by Bert Freudenberg
hi friends,

            i am new in croquet....
            how to interact particular part of object in croquet

    example:

                  human  is one object

                  it has head,hand,leg.....

                  i can interact total object(human)...

                   but i can't interact particular part of human(head,hand,leg)

                                                                help
me...............................
Reply | Threaded
Open this post in threaded view
|

Re: Using TUpdatingMesh

sathyas
In reply to this post by Phua Khai Fong
hi friends,

            i am new in croquet....
            how to interact particular part of object in croquet

    example:

                  human  is one object

                  it has head,hand,leg.....

                  i can interact total object(human)...

                   but i can't interact particular part of human(head,hand,leg)

                                                                help me.........
Reply | Threaded
Open this post in threaded view
|

Re: Render Croquet world in multiple viewports

Bert Freudenberg
In reply to this post by Hong Yi
I think the current SDK does not have that demo anymore. But the  
overlay mechanism is still there (see #renderWorld, overlays are  
rendered right before the buffer swap).

- Bert -

Am 05.08.2008 um 14:49 schrieb Hong Yi:

>
> Hi Bert,
>
> This sound like a perfect solution to our problem. Could you let me  
> know in
> which classes this "rear-view mirror overlay" functionality resides?  
> Which
> Croquet demo or app in the image has this "rear-view mirror"  
> function so
> that I can take a look at it?
>
> Thanks so much for the great info! I see light shining through now.
>
> Best,
>
> Hong
>
> -----Original Message-----
> From: Bert Freudenberg [mailto:[hidden email]]
> Sent: Tuesday, August 05, 2008 5:24 AM
> To: [hidden email]; Hong Yi
> Cc: <[hidden email]>; Yoshiki Ohshima
> Subject: Re: [croquet-dev] Render Croquet world in multiple viewports
>
> I don't have the code in front of me, but the "rear-view mirror"
> should be in the image, it used to be toggles by some hotkey. It
> renders a different view of the scene as an "overlay". You can
> register multiple overlays with your main camera, and each can draw
> into a different viewport (still one window only).
>
> - Bert -
>
> Am 04.08.2008 um 15:47 schrieb "Hong Yi" <[hidden email]>:
>
>> Hi Yoshiki,
>>
>> Thanks very much for your reply.
>>
>> Since our dome display is set up driven by one computer with
>> graphics cards
>> that each drives one of the four projectors, setting up four
>> computers and
>> running Croquet on each has to change our current dome set up which
>> will not
>> apply well (as we have several other C++/OpenGL apps running on the
>> current
>> dome set up by tweaking parameters to render geometries into 4
>> viewports).
>> But thanks for the good ideas and it might just work although I also
>> doubt
>> whether four projectors would look synchronized when they are
>> controlled by
>> 4 computers. I am still thinking there should be a way to tweak
>> projection
>> and viewing parameters to render geometries into 4 viewports in
>> Croquet. But
>> I am not familiar enough with Croquet code to know whether this is
>> indeed
>> doable and how to do it. Hope to get more suggestions on this so
>> that we
>> could really give it a try to run Croquet in our dome display which
>> would be
>> really cool.
>>
>> Since our tilt dome display is driven by one computer with graphics
>> cards
>> driving four projectors, full screen option would not work (full
>> screen mode
>> in this case will only occupy the full projection area of the first
>> projector unaware of other 3 projection areas). I am looking for
>> ways to run
>> a Croquet app independent with Squeak environment so that I can drag
>> the
>> Croquet window size to fill the whole dome once multiple screens are
>> configured properly to form a unified screen space. It would be
>> great if
>> somebody can point me to some document that instructs how to build a
>> standalone executable Croquet app.
>>
>> Thanks again and hope to get more ideas and suggestions on how to do
>> this in
>> our current dome setup.
>>
>> Best,
>>
>> Hong
>>
>>
>>
>>
>> -----Original Message-----
>> From: Yoshiki Ohshima [mailto:[hidden email]]
>> Sent: Monday, August 04, 2008 5:16 AM
>> To: [hidden email]
>> Subject: Re: [croquet-dev] Render Croquet world in multiple viewports
>>
>> Hello,
>>
>> At Fri, 1 Aug 2008 17:23:23 -0400,
>> Hong Yi wrote:
>>>
>>> Hello,
>>>
>>> We are thinking to run Croquet in a 15-foot diameter tilt dome
>>> display
>> which
>>> is driven by 4 SXGA+ projectors.
>>
>> Sounds cool!
>>
>>> We can run C++/OpenGL apps by rendering the
>>> geometries into 4 viewports corresponding to 4 projectors with
>> dome-specific
>>> parameters such as FOV, yaw, pitch, roll for each view. The C++/
>>> OpenGL
>> code
>>> snippet that runs on the dome is shown below for easy understanding
>>> on
>> what
>>> we need to do to get an app rendering graphics on the dome. My
>>> question
>> is:
>>> can I do the same to enable a Croquet app to render a virtual world
>>> on the
>>> dome?
>>
>> It looks from the code that you really don't have to too much
>> parameter tweak for individual projector.  So, I wonder that how well
>> it would look when:
>>
>> - You just set up four computers and run Croquet on each.
>> - Join them into the same Croquet session.
>> - Make three of them just "follow" another one.  I.e., the
>>   avatar's position is always same as the another one.  (Let us call
>>   the another one "master".)
>> - Change the code a bit so that the other tree avatars always look at
>>   specified relative directions from the master.
>> - Just move around the master and all four display shows the right
>>   thing.
>>
>> The biggest question would be the four projectors really look
>> synchronized or not.
>>
>>> If the answer is yes, how can I do this? Specifically, where and in
>>> which class can I set up multiple rendering viewports and their
>>> specific
>>> camera transformation and perspective projections in Croquet as I
>>> did in
>>> C++/OpenGL?
>>
>> My memory in Croquet's detail is rusty, but there is/was a feature
>> where an avatar can hop on and off a vehicle.  In the SDK, for
>> example, there are methods like TVehicle>>hopOn:.  If it works, like
>> it does, adding avatar to somebody else's frame would work.
>>
>>> Another question is: how I can run a Croquet app standalone without
>> running
>>> it within Squeak environment so that Croquet app window will not be
>> confined
>>> within Squeak environment window?
>>
>> If I understand the question correctly... Alt-click the 3D view to
>> get the "halo".  The red circle button bring up the menu, in the  
>> menu,
>> you can choose "toggle full screen" to go to the full screen mode.
>> Or, just make the 3D view size equal to the Squeak's window and you
>> can't tell it is running within Squeak.
>>
>> -- Yoshiki
>>
>>
>
>