ogre branch ? new attempt from scratch

The point of no return for both Ogre ports. Permanent links will be stickied on top with current information of each port (Lua and Python)

Moderators: ghoulsblade2, strook

strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

gotcha!

Image

:D

with your trunk it works now.

uploaded CMakeLists.txt, so one can generate Project files correctly.

we have to discuss how we handle it with the additions to the trunk.

i want to add my additions for displaying planets in the vs campaign without starting uc.

can you tell me how you modified the mission file for it?
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

ah i see. changed the radius from "1282000" to "5310". this is shrinking by factor 241,43126177.

also, we had to shrink all planets by factor 250 ?

on what platform did you test the flight?

i'll test it on my i5 quad core... lets see how fast it is...

maybe we have to shrink all planets first before we have implemented a more complicatd seamless flight solution.

plz have a look here http://yass-engine.de/downloads/thesis.zip

with this we can simulate real sized planets.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

well.. mine is crashing to, when going into the lower LOD levels, after coming very slow.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

ah i see. changed the radius from "1282000" to "5310". this is shrinking by factor 241,43126177.

also, we had to shrink all planets by factor 250 ?

on what platform did you test the flight?

i'll test it on my i5 quad core... lets see how fast it is...

maybe we have to shrink all planets first before we have implemented a more complicatd seamless flight solution.

plz have a look here http://yass-engine.de/downloads/thesis.zip

with this we can simulate real sized planets.
Look here: http://forums.vega-strike.org/viewtopic ... 25#p126146

I've changed the radius because it had a completely ridiculous value of 1.28 million kilometers. This is not real sized.

OgrePlanet is Anders Lingfors work not mine. I piked it because it is the most promising planet renderer for ogre imho, although incomplete.

No I do not plan to implement a new planet renderer from scratch(http://yass-engine.de/downloads/thesis.zip contains no source code).

The crashing is new, wasn't there before. I am looking into it.
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

i implemented multiple planet creation, but it is still buggy.

maybe you take a look into it in /branches/strook/vs_log0

changed:
branches/strook/vs_log0/src/cmd/planet.cpp
branches/strook/vs_log0/src/planet/OPPlanet.cpp
branches/strook/vs_log0/src/planet/OPPlanet.h
branches/strook/vs_log0/src/vsogre.cpp
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

maybe you take a look into it in /branches/strook/vs_log0
Why don't you checkout http://vegaogre.svn.sourceforge.net/vie ... rike_log0/ apply your local changes and post a patch. Having to jump from one branch to another and diffing the files is not that effective.
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: ogre branch ? new attempt from scratch

Post by pheonixstorm »

If you want source for seamless to look at try Pioneer or Simerge Both have source releases and look decent though still in an early life cycle.
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

i'm updating it... i'll use Ogre::Real = double precision.

we should use this i think vegastrike uses double precision, too (i'm not shure)

just change OGRE_DOUBLE_PRECISION in OgreConfig.h to 1 and recompile ogre.

i'll implement a variable length test, if neccessary.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

ok, here is the patch.

it includes also a modification in CMakeLists.txt that is needed by the Planetrenderer. i dunno why it compiled on the old platform (i updated ubuntu to 10.10).

it is a patch derived from log0 version 247 in the trunk.

the planets won't be rendered by the planetengine , i don't know were the error is in the moment.
You do not have the required permissions to view the files attached to this post.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

Thanks strook, will check it.
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

we should use ogre at double precision cause we need the large values.

i'll write an addon that ensures this.

also there is a new branch in /branches/strook/mine_vs_log0.

it is my development branch derived from revision 247.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

i added basic multiple planet support to the trunk, which is not enabled cause of a bug at generating the planets: if we put a unique name to the materials, the procedural generation will no longer generated.

you must compile ogre with double precision to compile this.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

@pheonixstorm: i think we got a pretty good algorytm, which is slow cause it is not parallel programmed and not optimized.

also we can make it faster if we use the optimisations and techniques shown in the thesis from the downloads section in the yass page.

this is how a good seamless rendering algorytm should look like.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
strook
ISO Party Member
ISO Party Member
Posts: 461
Joined: Fri Sep 03, 2010 12:10 pm

Re: ogre branch ? new attempt from scratch

Post by strook »

Image

atlantis will now be procedurally displayed.

other planets follow.
plz visit my vegastrike project branch here

plz support VegaOgre by donating to it!

My systems: Mac mini 1, 4gig RAM;
i5 Quad Core 2400, 300mbit WLAN, 1,3Tbyte HD, 60 GB SSD,
nvidia geforce 8400gs 512MB, 6gig RAM with Ubuntu 11.4,
win7 and hackintosh installed
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

Good work strook. A few rematks from my side.

The Impl was actually a Pimpl to hide the implementation details and especially ogre headers from vegastrike code. Here more info: http://www.gamedev.net/page/resources/_ ... impl-r1794

I would prefer to keep it private and access it through a abstract interface(CreatePlanet, UpdatePlanet, ...) if possible.

Do we really have to switch to doubles already? Vegastrike worked without them and OpenGL is restricted to floats anyway. It would also complicate the build process. Afaik no linux distribution I know of is offering Ogre with double support.
Hicks
Bounty Hunter
Bounty Hunter
Posts: 153
Joined: Sat Oct 22, 2011 9:17 am

Re: ogre branch ? new attempt from scratch

Post by Hicks »

i am assuming when ogre is working, and we have seamless flight, we will be able to model planets in a lot more detail, even down to terrain contours and adding buildings? Any idea what type of files we would need to model the planets/objects? what format things need to be in?
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: ogre branch ? new attempt from scratch

Post by pheonixstorm »

Thing is, we don't need ogre to be able to do that. We need to make seamless work with VS and VSOgre, especially if we want to have both games connecting and running in multiplayer. The work being done on this is wonderful though. Maybe one of these days I can split this thread up into multiple topics since this IS the VS Ogre forum ;)
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

I've pushed a fix for the crashing on surface approach(silly bug introduced by me while fixing compilation on linux). To be honest now having had a closer look into the patch code I think it is overly complicated for the job it is doing. I'd tend to simplify/rewrite it.

@Hicks:
I see no problems adding this features. But it is way too early to even think about it imho.I'd prefer to move the remaining vegastrike graphics implementation to ogre after having the planets working before adding more new features.

Btw ogre is just a graphics engine, although a fancy one. It is a high level wrapper of all the stuff needed to be done to draw things on screen. Vegastrike for example is missing such an abstraction, doing it the hard low level way.
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

I've had some time for testing. The jerky motion while approaching "Landing Paradise" is a precision issue. We are subtracting two large numbers(3E10) close to each other (planet position - camera position) which causes serious issues when getting close to the surface(50km).
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

OK. It is not the subtraction. The camera position jumps by a value of 2048m every few seconds on x and z axes . Given the messy code I am not sure if I'll be able to figure out why.
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

Position issue resolved :) Will start to refactor planet code to properly support multiple planets.
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

Hey guys. I've been wondering how much of the planet configuration should be exposed. The height data source is modular and rather flexible.

Current configuration(I've collapsed scale, scalebias modules to simplify it):

Code: Select all

highlands
type = ridgedmulti
octaves = 12
scale = 0.8
bias = 0.2
scalex = 250
scaley = 250
scalez = 250

lowlands
type = billow
octaves = 7
scale = 0.2
bias = -0.8
scalex = 250
scaley = 250
scalez = 250

mountains_select
type = perlin
octaves = 12
scalex = 10
scaley = 10
scalez = 10

mountains
type = select
control = mountains_select
source1 = highlands
source2 = lowlands
lowerbound = 0.5
falloff = 0.1
scale = 0.5
bias = 0.5

continents_select
type = perlin
octaves = 12
frequency = 1
lacunarity = 2
persistence = 0.625

ocean
type = constant
value = -1.0

continents
type = select
control = continents_select
source1 = ocean
source2 = mountains
lowerbound = 0.0
falloff = 0.1
The select module blends source1 and source2 based on the control and falloff value(falloff = 0 no blending).
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

OK this one took a bit longer than anticipated. The planet code support multiple instances now. Currently it will replace all planets(stars) in the system, the only parameter atm is planet radius.

Todo:
Camera setup. Light source setup. Working on planet lod(quite visible lod switches). Performance optimizations(we are vertex heavy 30k-170k). More planet parameters, replace current simplistic shader with the complex one.

Features:
It is multi-threaded and will require multiple(2) cores to run smoothly. The implementation requires shader support. I don't think there is a way to avoid this, we will need linear z depth. The integration into vegastrike source requires changing about a dozen lines of code in three files. I think it can be merged into vs and run conditionally if desired.

@pheonixstorm what would be your minimum requirements to consider the code to be ready for inclusion?

Btw would be great if someone else tried to build/run it, not sure if strook is still around.
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: ogre branch ? new attempt from scratch

Post by pheonixstorm »

Get it ready and I will add it to my branch. I can compile for linux and windows. Will probably have to add in a setup config so that those with low end cpus can opt out and use the normal routines. If you think its ready i'll add it to my branch. We can work out all the bugs as we go. I really want to see how this looks in VS proper :) :D :o 8)
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
log0

Re: ogre branch ? new attempt from scratch

Post by log0 »

Cool. I'll add camera, light source interface and create a patch against your branch.
Post Reply