Scolring - Forum

Entraides et échanges autour de la technologie Scol - Informations and exchanges on the Scol technology

Vous pouvez changer la langue de l'interface une fois inscrit - You can change the language once registered

You are not logged in.

#1 28-Apr-2014 13:28:50

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Researching

Hello Everyone,

I am new here and would appreciate any time you could spare to help me understand if OpenSpace 3D is right for me.

I'm looking to do some research and am looking for tool with certain features.  I've read through the website but have been unable to determine if OpensSpace3D is right for me.

REQUIRED FEATURES

These are the required features I am looking for:

1) Multiple Viewports to be rendered simultaneously. e.g. There could be 3 cameras placed in a room and I need to see the scene as seen from each camera in real time.

2) Ability to set view port camera view angles and positions. e.g. one camera may have a zoom lense in one corner of the room while other may be wide angled lense and in the other corner of the room.

3) Physics, ability to apply random procedurally controlled movements incorporating mass and inertia to objects.

4) Ability to procedurally control objects in the environment via an API. e.g. I can call an API from another program to first get the coordinates of a chair: x,y,z.  Then make another API call to it to coordinates: x1,y1,z1

5) Ability to set view ports on objects. e.g. set a view port camera on the handle of a door and as the door opens the realtime view can be seen as if the camera where attached to the door handle.

6) Ability to view what is seen via a camera through an API. e.g. In another program make a call to an API to be able to view realtime scene as seen through that camera. For instance api.getviewport(camera1)

7) I need an extensive library of objects and textures to accurately reproduce indoor home environments. I need this so I can easily create different indoor environments. Is there such a library available?

8) Realistic indoor lighting and shadow casting.

9) Ability to set ambient light levels so I can simulate the difference in light seen internally as time changes from dawn to midday to dusk to night.

10) Ability to easily import 3D models from other modelling and drawing packages.


Thank you in advance for any assistance you can offer.

Offline

#2 28-Apr-2014 18:18:18

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

Hello !

Yes I think that most of your requests can fit.
about the api there is functions to create an http server to communicate between 3D and other device in html navigator.
OS3D manage day / night with sky simulation
If there are missing functionality you can also propose them on redmine.scolring.org

Offline

#3 29-Apr-2014 11:11:07

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Hello!

Thank you for your update.

So where do you suggest I start in order to achieve setting up Openspace 3D ASAP so that I can start researching ASAP.

Offline

#4 29-Apr-2014 13:17:21

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

Hello

as any software it take some time to learn smile
your project seems a bit complex so you should start to learn with simple applications and examples.

you can found several tutorials on http://youtube.com/openspace3d

I'm also writing a beginner guide for OS3D, but it still need to be translated in English.

Offline

#5 29-Apr-2014 13:42:21

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Thank you.

Can you point me to a high quality library I can use for constructing and indoor home scene?

Offline

#6 29-Apr-2014 13:43:58

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

hmm there is no free library for good objects quality
you should search on non free libraries for real time 3d and export the models from 3ds max.

Offline

#7 29-Apr-2014 17:34:51

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

What formats does openspace 3d support for importing?

Offline

#8 29-Apr-2014 17:38:02

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

Actually OS3D support Ogre3D format
you can found exporter for 3D modeler here :

for max : http://www.ogre3d.org/tikiwiki/tiki-ind … e+Exporter
for sketchup : http://www.openspace3d.com/lang/en/support/download/
for any other like blender : http://www.ogre3d.org/tikiwiki/OGRE+Exporters

We are working on a loader to load any common format for next releases.

Offline

#9 30-Apr-2014 09:08:14

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Thank you.
Can you point me where to look in order to setup 3 viewports (3 cameras) connect them to an object and then move the object around via API calls?

Offline

#10 30-Apr-2014 17:33:56

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

In OS3D there is a viewport plugIT, where you can set a camera and a viewport position.
There is different way to implement an API to move the object.

1- this is a local application view, you can embed the 3D application in a webpage and use javascript to trigger actions and get events from the 3D with ActiveX plugIT
2- you want a network application, you can use 2 same clients applications with network plugITs to make a client moving or changing something in all the other clients view (can also be done in an embed web page)
3 - you can use the network Web control plugIT to trigger actions and receive events in a classic webpage (without 3D in it) and so access this page from any terminal like a phone or tablet. making this page actualize the content regulary could allow you to download an screen shot of the current application 3D view. (using the screen shot plugIT)

Offline

#11 1-May-2014 04:44:31

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Hello Again,

I see there are plenty of samples. They are really helping, great work!

Networking Questions:
I've also seen how you can send message to jscol.openspace3d.com on port 9090.
I see how these message are read too.

What I need to do is programmatically send messages from my own program. e.g I write a c++ program and from it send messages to the JSCOL server.
Where would I need to look to learn how do this?
This way from my own program I can control objects in the scene.


Multiple Camera Questions
I've been able to setup up multiple cameras.
How can I view all of them at the same time, it seems I can only set one camera to be on.
In which case I think there needs to be some client /  server system in place. The server is doing the realtime rendering. While the clients are merely viewing the scene. Is this possible?
How can I open the camera view programmatically in my own written C++ program?

Last edited by Gizmo (1-May-2014 04:55:47)

Offline

#12 1-May-2014 13:38:31

hebdemnobad
Member
From: northamerica
Registered: 20-Apr-2011
Posts: 1,541
Website

Re: Researching

Fwiw you can do quite a lot using the scol APIs.

Offline

#13 1-May-2014 16:56:17

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

hebdemnobad wrote:

Fwiw you can do quite a lot using the scol APIs.

Thank you I have been reading scol doco.

I still don't understand how Openspace3D and Scol inter-operate.

Are you saying a write a program in scol to access the Openspace3D to do:
  1) Open up views of multiple cameras of the same scene?
  2) Use the scol networking ability to write create an API I can call from my own program.

I know I have a lot to learn here.
Thanks for your patience and pointing me in the correct direction.
Please if you can give me as much detail as possible regarding where I need to look.

Offline

#14 1-May-2014 17:17:03

hebdemnobad
Member
From: northamerica
Registered: 20-Apr-2011
Posts: 1,541
Website

Re: Researching

anything the plugits can do you can do with your own scol code. the plugits create ui's using scol, but you can write your own code and modify an existing plugit to do whatever you want with scol.  openspace is an editor written completely in scol.

If you look that the history of my posts, you can see how I learned to do it, from simple windows to a script that manages custom avatar object.

If you can handle javascript you can handle scol.  Like c++ it's easy to create custom objects of your own, so you can easily instance and modify them.

So if openspace can do something, you write your own code to play with the same building blocks. (I haven't done much with the viewport object, but it's on the online api.)

Iri and Arkeon are very helpful to anyone who wants to learn.
-h

Offline

#15 1-May-2014 17:17:05

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: Researching

Hi,

Openspace3D is fully written in Scol (Scol is a programming language).

To open a 3d view from an external application, some codes should be written. The link can be set to the Java Scol server. I don't really think about that, so Arkeon (he develops OS3D) could give a better response.

Thanks for your interest

Offline

#16 2-May-2014 05:12:11

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Hello,

Ok I've manage to get some demo scol program running.

(Please note in one of your code  sample you have '#' as comment I think you wanted '//' see hello_World.scol:  http://redmine.scolring.org/projects/tu … ld_in_Scol )

I'm still not clear on 2 things:
1) How to hook in externally via an API. I'm thinking doing it vial network comms will do but I do not see where I can configure OpenSpace 3D to listen for network messages on a certain port.
2) How to view the realtime 3d scene from multiple cameras at the same time.

I really want to get into my research as soon as possible.
Is it possible to request the assistance of a knowledgeable person to help me setup the above two points.
Once those are in place I am certain I can figure out the rest.

Offline

#17 2-May-2014 16:26:31

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: Researching

Hi,

Gizmo wrote:

(Please note in one of your code  sample you have '#' as comment I think you wanted '//' see hello_World.scol:  http://redmine.scolring.org/projects/tu … ld_in_Scol )

No, the code is correct.
In fact, the hello_world.pkg file is a package : the source scol written in Scol. This code will be loaded, compiled and executed in a VM.
The hello_world.scol file is a launcher : it just launches a new VM and call the package(s).

In Scol, a comment begins by a ' // ' (line) or ' /* ... */ ' (block).
In a launcher, the comment begins by a ' # ' (new line only)

Gizmo wrote:

I'm still not clear on 2 things:
1) How to hook in externally via an API. I'm thinking doing it vial network comms will do but I do not see where I can configure OpenSpace 3D to listen for network messages on a certain port.
2) How to view the realtime 3d scene from multiple cameras at the same time.

1/ In Scol, you can link two objects by a TCP or UDP channel or create a HTTP server, ... Of course, you can configure the listening port.

2/ I guess a different viewport is linked to each camera. However, os3d doesn't provide this feature, it would be to do.
I don't code the 3d engine, so I don't have all knowledge about it (i can tell a foolishness).

Offline

#18 2-May-2014 17:05:57

Gizmo
Member
Registered: 28-Apr-2014
Posts: 9

Re: Researching

Hello Stephane,

Interesting about the '#' it was gerenating a syntax error. When I replaces it with '//' it was fine. Wierd maybe it was some setting I have?

Sad to hear about the multiple live views of the same scene.

I really need that aspect for my research.

Can anyone here point me in the right direction on how I can get this done?

Offline

#19 2-May-2014 21:48:59

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: Researching

Gizmo wrote:

Interesting about the '#' it was gerenating a syntax error. When I replaces it with '//' it was fine. Wierd maybe it was some setting I have?

hummm, no. ' # ' is correct, ' // ' is false in this case.

# This is a comment
# We load our package. If we have several package, we add several lines ...
_load "tutorials/hello_world.pkg" 
# We call the main function. If we want, we can passe any arguments (types I or S only)
main

is put in a *.scol. Not in a package ! Is it right ?
You 2x-click in this file to run the test.

Gizmo wrote:

Can anyone here point me in the right direction on how I can get this done?

Scol api already exists but this feature is not in os3d. In os3d, it should be a PlugIt (it is a "module", a " feature", an "add-on"). I don't know if Arkeon can do this quickly but you can add a feature request in the Scol server development part. :

first : register you : http://redmine.scolring.org/account/register
next : add your (precise !) request : http://redmine.scolring.org/projects/op … issues/new

Offline

#20 4-May-2014 09:56:52

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

Hi!

to create multiple views from different cameras in OS3D use the Rendering/viewport plugIT
(so yes it exist smile)

you could then modifiy the screen shot plugIT to send the content of the pcture in a network message.
I know that students do a c++ clients for the scol java server some years ago.

Offline

#21 4-May-2014 12:45:03

iri
Admin. / Scol language & Scol apps developer
From: France
Registered: 22-Feb-2009
Posts: 2,024
Website

Re: Researching

arkeon wrote:

Hi!

to create multiple views from different cameras in OS3D use the Rendering/viewport plugIT
(so yes it exist smile)

cool smile

arkeon wrote:

you could then modifiy the screen shot plugIT to send the content of the pcture in a network message.
I know that students do a c++ clients for the scol java server some years ago.

From an external application to OS3d too ?
And without ScolJavaServer, with network messages only ?

Offline

#22 4-May-2014 13:41:55

arkeon
Admin. / Scol language & OpenSpace3D developer
From: Nantes
Registered: 30-Mar-2009
Posts: 5,161
Website

Re: Researching

hmm with the TCP /UDP api you could create your own network procedure
Actually OS3D use the java server that create "Rooms" and manage users with an application ID.
the java server connection process is secure with RSA / AES encryption, so it should be easier for you if you manage you own network procedure, like a simple upd protocol

Offline

Board footer

Powered by FluxBB