General CRYENGINE Discussion

View unanswered posts | View active topics


Post a new topicPost a reply
Previous topic | Next topic 

  Beginner BeginnerMember since: 21.04.2012, 20:29Posts: 4 Likes: 0
 

 Post Topic: Question from researcher
PostPosted 21.04.2012, 20:44 
Hello everyone,

I'm looking for a game engine or simulator for a new project, and I'm hoping you can help me figure out if CE3 is something worth considering for our purposes. Unfortunately I'm not familiar with game engines in general, so forgive me if I screw up the lingo..

For a new research project we want to be able to simulate/render relatively small indoor and outdoor environments, think living rooms, or garden sized areas, but with highly realistic looks. An agent/camera/viewpoint needs to be able to move inside this environment.

The crucial part however, is that this needs to be coupled to our model. More specifically, we need to be able to output frames (or short videos) from the engine/simulation, as well as map or path coordinates of the agent (for instance by printing them to textfiles). Secondly, the engine/simulation then needs to be able to take in commands for moving the agent, for instance through simple text files, or possibly through more complex piping.

My question is if the above would be possible with the CE3 engine, and realistically how much effort it would take to accomplish this for a small group of people who are new to gaming engines / rendering in general, but are otherwise computer savvy.

Thank you for your help!


Last edited by kolfers on 23.04.2012, 15:59, edited 2 times in total.

User avatar   Crytek Staff Member Crytek Staff MemberMember since: 11.07.2008, 20:25Posts: 11735Location: Nottingham, UK Likes: 75
 

 Post Topic: Re: Question from vision researcher
PostPosted 21.04.2012, 20:54 
Seems possible :) How does the vision model you mentioned operate? Do you need to stream the frames in realtime to somewhere else, or just render the videos offline to file?

You could either store absolute coordinates for the agent each frame, or the start position and a series of deltas that describe the movement that takes place each frame. Does this agent need realistic bipedal movement or is it more of a camera?


Out now! CryENGINE Game Programming with C++, C#, and Lua
Server programmer for Warface, Warface 360, and more
  Beginner BeginnerMember since: 21.04.2012, 20:29Posts: 4 Likes: 0
 

 Post Topic: Re: Question from vision researcher
PostPosted 21.04.2012, 21:29 
Thank you for the quick reply!

In terms of real-time streaming vs offline, at the moment we are not concerned with speed, if it takes a whole night to run that is perfectly fine. However, our model and the simulation do need to be run in parallel, that is in essence a 'run' would look like this:

1. Simulation is started and outputs current x,y position + first frame.
2. Our model takes the frame + coordinates, and outputs a steering/movement direction: for instance, turn around z-degrees, or move towards x,y at speed z, or move for z seconds etc.. We are fairly flexible as to the kind of directions we can give, as long as some interaction is possible.
3. The agent in the simulation (currently, a basic camera view would be sufficient) uses our model output and executes the movement. It then outputs the resulting frames, for instance 20 frames covering the movement sequence, plus the new coordinates. It then waits or pauses until new directions from our model are available.
4. Steps 2 and 3 are repeated.

What I gather from your reply, outputting the frames and coordinates would be possible, however would the simulation/agent be able to take in movement directions (e.g. from textfiles or otherwise)?

Thank you again!
User avatar   Crytek Staff Member Crytek Staff MemberMember since: 11.07.2008, 20:25Posts: 11735Location: Nottingham, UK Likes: 75
 

 Post Topic: Re: Question from vision researcher
PostPosted 21.04.2012, 21:46 
Sure, it should be incredibly simple to write some C++ (not sure whether Lua scripts get file IO access) that loads your data and moves the entity then. You have full control over entity positions and rotations (see IEntity::SetPos/SetRotation in the SDK code) so moving it should be trivial. How you do so just depends on the form in which you output your data :)


Out now! CryENGINE Game Programming with C++, C#, and Lua
Server programmer for Warface, Warface 360, and more
  Trained Modder Trained ModderMember since: 17.04.2008, 00:04Posts: 360 Likes: 13
 

 Post Topic: Re: Question from vision researcher
PostPosted 21.04.2012, 23:42 
It sounds kinda like animating a camera or character in a trackview sequence may accomplish what your motion data is doing.

I think it would be interesting to watch a video showing the same sequence may times with different vision conditions.
  Beginner BeginnerMember since: 28.12.2011, 01:23Posts: 34 Likes: 1
 

 Post Topic: Re: Question from vision researcher
PostPosted 23.04.2012, 05:13 
LUA has io access and can read files from within CE3. Eg. Use the following to get text from a file:
Code:
local filename = "C:/test.txt";
local file = io.open(filename, "r");
nextline = file:read();

You can check google for more io-operations from within LUA, it is explained there pretty well. You can read/write/append/etc. Good luck!
  Beginner BeginnerMember since: 21.04.2012, 20:29Posts: 4 Likes: 0
 

 Post Topic: Re: Question from vision researcher
PostPosted 23.04.2012, 15:59 
Hi everyone,

Thanks for the responses, this gives me enough confidence to give it a try!
  Trained Modder Trained ModderMember since: 19.10.2008, 11:28Posts: 388Location: India Likes: 0
 

 Post Topic: Re: Question from researcher
PostPosted 25.04.2012, 14:42 
Check out The titanic game in development (newspage.php?news=89009)
perhaps thaat should answer a few questions?

RE