Showcase
Showcase your work that you have created in the Skyline Game Engine.

Moonrats - Gen2 Racer WIP

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 01 May 2018, 17:53

SolarPortal wrote:we will have to set a higher priority on the end game tasks.


Yeah, I'd like to have a solid end game foundation before going forward with this, otherwise it's gonna be the hell to find a bug. I couldn't export a working end game today, after adding the waypoints and the items. :(

In the editor everything runs fine though. I've cleaned up the code and fixed the bugs I had, so the item picking system is working now. I just have a problem when I try to delete the triggers in runtime (after picking them) because Skyline tries to remove automatically the bodies on stop, then it says that those bodies don't exist.

Anyway, here's a video of the progress so far:



Q) Is there any way to store a path outside of the scene?

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 02 May 2018, 01:18

nice, thats looking much more polished than the last video release.

Yeah, I'd like to have a solid end game foundation before going forward with this, otherwise it's gonna be the hell to find a bug. I couldn't export a working end game today, after adding the waypoints and the items. :(

ahh bummer.. if there are simple scenes you can put together and send us, it will speed up trying to find what is wrong with the end game.
One of the things that normally shows itself is any scripted resource like mesh spawning, particles, sounds etc... if the names are not in the function call or as a direct variable, then they tend not to be picked up. We have got plans to mitigate this though..
however, adding the assets to the project should resolve that issue as it will export all the files.

Q) Is there any way to store a path outside of the scene?

Yes, if it is precompiled, e.g. not a runtime generated path, then you can reuse the .skypaths file in your save directory or sceneData directory that is with your scene file.
Otherwise if it is spawned, then write it to a JSON file and then read and create on play in another scene.
I hope this is what you were asking for :P

As mentioned in previous posts, we going to be doing more work with the end game. We just havent had enough users reporting to iron out the system as much as the editor has had.

anyway, great work as usual :)

p.s. whats your shadow distance set to on the directional light. As if you only want it around 40 or so, then low shadow quality would give better performance without too much degradation in quality. I think its the fade which doesn't work on low quality shadows. Otherwise 100-250 is a good number and looks much better :P
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 02 May 2018, 07:54

Hi Solar,

thanks for having a look at this. Already sent you the project files. Everything is sorted and well organized, you should not have problems. Hope you can find what's going on there.

SolarPortal wrote:if the names are not in the function call or as a direct variable, then they tend not to be picked up.


I don't understand, can you give an example on how to spawn entities properly?

SolarPortal wrote:Yes, if it is precompiled, e.g. not a runtime generated path, then you can reuse the .skypaths file in your save directory or sceneData directory that is with your scene file.
Otherwise if it is spawned, then write it to a JSON file and then read and create on play in another scene.
I hope this is what you were asking for


Thanks, that's exactly what I need. ;)

SolarPortal wrote:p.s. whats your shadow distance set to on the directional light. As if you only want it around 40 or so, then low shadow quality would give better performance without too much degradation in quality. I think its the fade which doesn't work on low quality shadows. Otherwise 100-250 is a good number and looks much better


I'm not really into graphics yet, everything has the default settings, but changed the shadow distance to 200. ;)

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 02 May 2018, 08:10

Another thing: I'd like to setup a master race scene where the entire level is spawned by script depending on the settings from the menu scene, instead of having 15 different scenes, one for each track... is that too crazy?

The only problem I see is the Skybox, as I'm not sure if it's possible to change it in runtime. I'm thinking on making my own skybox with a shadeless cube, but don't know how to setup a shadeless material. Any advice would be great.

Thanks!

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 02 May 2018, 11:00

Ok, making my own skybox with a mesh didn't work very well... but I've seen that tere are several skyboxes in the Game Objects folder, how can I make a preset from a Skybox?

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 02 May 2018, 20:26

calling env.setSkyBoxMaterial() in the next version will change the skybox material at runtime.
This should help with that one.

I don't understand, can you give an example on how to spawn entities properly?

sure :)

If a resource is used like so:
Code: Select all
entity.spawnMesh("mymesh.mesh", ...) -- Just pseudo code to show :)


Notice the mymesh.mesh file is inside the parenthisis. This will be picked up by the resource parser correctly and be added to the end game as does this also works and collects:

Code: Select all
myStringVar = "mymesh.mesh"
entity.spawnMesh(myStringVar , ...) -- Just pseudo code to show :)


However, these will not resource collect properly with the system:
Code: Select all
local myStringVar = "mymesh.mesh"
local meshName = myStringVar;
entity.spawnMesh(meshName , ...) -- Just pseudo code to show :)


or

Code: Select all
local myStringVar = "mymesh"
local meshName = myStringVar..tostring(idx)..".mesh";
entity.spawnMesh(meshName, ...) -- Just pseudo code to show :)


Hope this helps clear this up..

The only problem I see is the Skybox, as I'm not sure if it's possible to change it in runtime. I'm thinking on making my own skybox with a shadeless cube, but don't know how to setup a shadeless material. Any advice would be great.

A shadeless material in skyline's terms is called an unlit material.
This is created in the asset manager by right clicking on empty space inside a folder and choosing new material > Unlit. This material recieves no lighting information and i think it skips shadows too.

Ok, making my own skybox with a mesh didn't work very well... but I've seen that tere are several skyboxes in the Game Objects folder, how can I make a preset from a Skybox?

To make your own skybox mesh, the normals would have to be facing inwards, this can be done in a modelling package or using the skyline material editor to change the "Culling mode" property on the first tab to anti-clockwise to render inside out.

Hope all this helps and thanks for the files. I will look into them as soon as i have some time to do so :D
Thanks again :)
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 03 May 2018, 07:12

SolarPortal wrote:calling env.setSkyBoxMaterial() in the next version will change the skybox material at runtime.
This should help with that one.


Great. :) Mesh based skyboxes are not a good idea I fear, they interact with the fog and looks weird.

Anyway, I'd like to know how the skyboxes presets which are in the GO folder are done. Just curious.

Thanks for the info about spawning... I usually do it like in your second example, but taking the name from an array.

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 03 May 2018, 10:43

have a look in "System Library\Game Objects\Nature\Nature_Skybox" to see how the skybox presets are setup.
From the looks of it, just name the presets the name of the skybox material and it should then appear in the game object panel when reselected. Nice and simple :)

Yeah, meshes are awkward for fog and skybox's, however, you can override the material to not fog at all even while fog is active.
add
Code: Select all
"fog_override" : true,
into your material under the
Code: Select all
"workflow" : "specular_ogre",

Save and then reload your entity for the changes to take effect.
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 03 May 2018, 17:27

SolarPortal wrote:have a look in "System Library\Game Objects\Nature\Nature_Skybox" to see how the skybox presets are setup.
From the looks of it, just name the presets the name of the skybox material and it should then appear in the game object panel when reselected. Nice and simple


Those presets are weird, I've create one as you say and just can access from the GO panel, can't spawn them from a script. Also, seems like they don't get saved in the scene, I have to add them every time I open the scene. :?

Anyway, I've changed my mind about spawning the whole level. I'm having problems trying to spawn a vehicle preset from a script, so I manually had to add all the vehicles to the scene. Also I need the track in order to place the pole positions and to create the path anyway, so I'll make a different scene for each track. I still can share the scene script. :D

Here's a video driving against 9 opponents. Now the Ai cars inherit all the visuals and settings from the player's vehicle script.


My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 03 May 2018, 17:31

Q) How can I start/stop the AI cars?

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 03 May 2018, 20:20

Those presets are weird, I've create one as you say and just can access from the GO panel, can't spawn them from a script. Also, seems like they don't get saved in the scene, I have to add them every time I open the scene.

That's because they are not presets in the sense of skyline presets. They are just a "Preset" Skybox that the system changes the material on the skybox when clicked. Nothing added to the scene :P

Anyway, I've changed my mind about spawning the whole level. I'm having problems trying to spawn a vehicle preset from a script, so I manually had to add all the vehicles to the scene. Also I need the track in order to place the pole positions and to create the path anyway, so I'll make a different scene for each track. I still can share the scene script.

I haven't tried spawning vehicles in a long time, so would not know what to expect haha :P

The video looks cool though. I like the way the AI car undertakes and looks like its going to lose it on the corner lmao :P
Q) How can I start/stop the AI cars?

Surely, where it follows the path in the update loops, you could place a start / stop catch around that. If that doesnt do it, then im not quite sure at this moment :P
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 06 May 2018, 15:50

Hi there,

I'm currently working on the race tracker and got a rudimentary way to track the standing positions based on accumulated waypoints. Still a lil bit choppy, but it kinda works. The problem is that I don't know how to get the standing value, product of the sorted table. I'm gonna explain what I did so far so maybe you can help me on this.

I'm storing all the driver's data in a multidimensional array like this:

Code: Select all
driver = {
   [1] = {
      standing_pts = 63,
      standing = 0
   },
   [2] = {
      standing_pts = 54,
      standing = 0
   },
   [3] = {
      standing_pts = 124,
      standing = 0
   },
   ...
}


Then I've created a temporary table to sort the standing points collected by each driver:

Code: Select all
RaceScore = {}


I'm using an auxiliary function to sort the RaceScore table, which I found here: https://stackoverflow.com/questions/157 ... le_rich_qa

Code: Select all
function spairs(t, order)
    local keys = {}
    for k in pairs(t) do keys[#keys+1] = k end
    if order then
        table.sort(keys, function(a,b) return order(t, a, b) end)
    else
        table.sort(keys)
    end
    local i = 0
    return function()
        i = i + 1
        if keys[i] then
            return keys[i], t[keys[i]]
        end
    end
end


Then, in the update loop I fill the RaceScore table:

Code: Select all
for i=1,total_drivers,1 do
   RaceScore[i] = driver[i].standing_pts
end


And here's the funny part. This loop prints the RaceScore table already sorted by amount of standing points, as you can see in the video.

Code: Select all
for k,v in spairs( RaceScore, function(t,a,b) return t[b] < t[a] end ) do

    -- Prints: Car(k)   Pts(v)   

end


There are still some issues with collisions but it works fine. The only thing I need is a way to store the order value to "driver[i].standing", so I can print it in the HUD. So for the one on top, it would be 1, for the second, 2 and so on... how can I get that value?


My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 06 May 2018, 20:39

i shall re-read this tomorrow and give you a response then :) Thank you for your patience :)
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 07 May 2018, 17:47

Nevermind, I found the solution. :D

it was as simple as this:

Code: Select all
   local c = 0
   for k,v in spairs( RaceScore, function(t,a,b) return t[b] < t[a] end ) do
      c = c + 1
      driver[k].standing = c
   end


I just had to add a counter to the sorting loop, that gives me the standing value.

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 07 May 2018, 18:18

So here's a video showing the race tracker working, now the standing number on top is giving real results. 8-)

It's blinking for a while between two numbers, due to two cars being in the same waypoint. I think it can be solved giving the higher position to the car which crossed first the same waypoint.

I'm also having some issues with the waypoints collision when there are many cars. I sometimes don't get the collision value and I'm starting to think that maybe it's not working if two cars collide with a waypoint at the same time.


My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 07 May 2018, 18:58

Nice and glad it was so simple :)

As for the flickering between the 2 numbers, you could get around this by polling less frequently, e.g. on a timer with 100ms between each poll rather than each frame :)
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 10 May 2018, 17:40

SolarPortal wrote:As for the flickering between the 2 numbers, you could get around this by polling less frequently, e.g. on a timer with 100ms between each poll rather than each frame :)


That helped, thanks... ;)

The race tracker is still a bit funky, but at least I can start programming all the game states. Here's a video of one lap race with the end panel.

When the race ends, the player car becomes an AI car and follows the path until a key is pressed, then will jump to the global race results panel. :D


My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 10 May 2018, 19:55

Nice! yeah, saw the standing, looked like it was 1 out on the tracking..
Like the end panel and the car following the track, starting to look like a propa racing game! :)
Keep it up.

p.s. still working on the GUI side, just waiting till the weekend to try and do the rendering of it again to make it more performance friendly.

We have also had the go ahead from Noesis GUI that we can integrate it into the engine which is a more powerful GUI system than librocket, but its only free if your annual income is less than 100k euro a year. However, we will be maintaining Librocket as skyline's defacto default gui system. Just thought you would like to know :)
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 11 May 2018, 08:32

SolarPortal wrote:We have also had the go ahead from Noesis GUI that we can integrate it into the engine which is a more powerful GUI system than librocket, but its only free if your annual income is less than 100k euro a year. However, we will be maintaining Librocket as skyline's defacto default gui system. Just thought you would like to know


That Noesis GUI looks awesome. :o Can't wait to put my hands on it. :D



Librocket is cool, but is dead. Documentation is not available anymore. Somebody made a repository but is not complete. I think LR is cool for simple menus, but if one wants to go further it has a lot of limitations.

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 11 May 2018, 10:35

glad to see your reaction to it is positive! :) It will be a while before its integrated, but yeah, it is far more powerful and we are looking forward to seeing what it can do in skyline and of course, with your superb GUI skills, it should be second to none! :P
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 29 May 2018, 21:50

Just wanted to inform you that the rendering of the GUI has sped up 2 fold on my build now. Since the stage 01 grass is completed, i decided to give this a quick go again and found right away that when the GUI geometry needs to be recompiled, the buffer being locked to input the new vertex set for the GUI element was using a read / write access mode rather than just discarding and reuploading the full buffer of 4 verts lol..

I tested the performance and on my CPU i went from 48fps to 93-98fps. Not to shabby for only 2 words in code being changed lol :P

We shall continue to take a look into this tonight and see if any more can be pulled out of it quickly :)
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 30 May 2018, 12:40

Hi Solar,

I don't understand anything of the technical stuff but sounds great. :) I also have some projects with hundreds of spawned GUI elements, in case you need to do more tests. Thanks btw for having a look at this, as always.

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Re: Moonrats - Gen2 Racer WIP

Postby SolarPortal » 30 May 2018, 14:48

ok, even more boost :P
i am now getting ~130fps since i removed some extra pipeline cloggage.. skip the jargon haha
Its now much smoother and the performance impact on the level now is simply the calls to setText and the GUI needing to recreate the required elements, smoothing this out so thing only update every other frame, or update ones on this frame and some on the next will then see thi near 200fps i reckon :P

There isnt much more i can pull out of the rendering, there are some tricks that can be employed, but they require full rewrites.
At least it isnt 35-50 now haha
Skyline Game Engine - Lead Dev.
Please provide as much info as possible when asking for help.


Specs: OS: Win 10 64bit, CPU: Intel i7 4770 3.4ghz x 4 core(8 threads), GPU: Nvidia GTX 1060 6GB, Ram: 16gig DDR3, Windows on 250gb Samsung Evo 860

Twitter: @SolarPortal
Instagram: @SolarPortal
User avatar
SolarPortal
Skyline Founder
Skyline Founder
 
Posts: 3631
Joined: 29 Jul 2012, 15:56
Location: UK
Skill: 3D Modeller
Skill: 2D Artist
Skill: Programmer
Skill: Level Designer

Re: Moonrats - Gen2 Racer WIP

Postby planetX » 30 May 2018, 17:18

Excellent! :D

That boost is what the level needs to run with particles, as they were causing a big slowdown as well.

Keep the good work!

My specs: Windows 10 - Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz - 16 Gb ram DDR4 - NVIDIA GeForce GTX 960M 4 Gb

planetX
Skyline Contributor
Skyline Contributor
 
Posts: 210
Joined: 28 Nov 2016, 18:27
Skill: 3D Modeller
Skill: Level Designer
Skill: Concept artist
Skill: Great creative
Skill: Programmer

Previous

Return to Showcase

Who is online

Users browsing this forum: No registered users and 0 guests