Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

AppGameKit Chat / Is there anything like a Minecraft clone out there, made with AGK?

Author
Message
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 19th Aug 2018 21:33
Thank you Xaby for your comments and indeed its a nice feeling of knowing that some other engine. Like C or Unit and such like to able to perform these tasks.

Im an AppGameKit coder and like to stay that way. I feel the importance of what AppGameKit is really capable of and always have done. So although we can do what your saying via DLL plug in imports would be a master peice.

But lets look at how AppGameKit started - just a mobile programming language with not too much of the dramaticness of how games are created to what we see around these days

Better drawcalls to the GPU requires shaders to do all the ground work- so if you could get into shader language then i think it will work well.

We have all the tools in place to make a nice product with AppGameKit already, so knowing the tricks of shaders will dramatically change the realism of this

Santman
7
Years of Service
Recently Online
Joined: 15th Sep 2011
Location: Inverness
Posted: 23rd Aug 2018 00:02
Isn't that just instancing? Hasn't total war being doing that for a good while now?

Search for plug ins.....someone added one that let's us use compute shaders.
Xaby
FPSC Reloaded TGC Backer
11
Years of Service
User Offline
Joined: 17th Apr 2007
Location: Berlin
Posted: 23rd Aug 2018 08:27
@puzzler2018

I love AppGameKit as well. And like the way, I can code. I like, that it is available on Android and Raspberry Pi. I didn't want to say: Oh look here, Unreal and Unity could do that and AppGameKit not. That was not the case.
More like: Oh, Unreal and Unity also had there problems with drawcalls and some overcome it, maybe we could look into some ideas.

For most of my ideas, projects, tools, I want to make, Unreal or Unity are to much of an overhead. I also like that I could write an complete game in AppGameKit in the time, Unity or Unreal need to start it's Editor or compile the game.

So AppGameKit is the best, that's why we are all here. And you have done a great job so far. Mostly am programming for the OUYA with it's Tegra 3 Soc. And shaders most of the time to slow But combining objects into one Mesh, to reduce the drawcalls could be the answer and key to performance.
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 26th Aug 2018 18:51
Hello

Sorry ive been neglecting this once again, its been a tough challenge, I have been mainly working on terrain map rolling etc.. Even though i nearly had it in this application, its just not 100% cause the
chunk generation is proving to be somewhat memory challenging.

So instead of the time being, ive just made the chunk larger and added a removal of a block

I know it feel like we going backwards with this, but for a learning programmer - i think its coming a long pretty well

I have implemented a cube damage level of 10, have a left click around (will need to do a few times) on the same block



My brain hurts now

Attachments

Login to view attachments
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 26th Aug 2018 20:42
Ive re-added the add and the atlas map for the tiles -



Right click deletes cube with some effects that can be changed to make it more appealing with the normal dynamics

Left click adds cube

Not forgetting the tilemap for the blocks - add to the media folder




Attachments

Login to view attachments
fubarpk
AGK Developer
Gold Codemaster
13
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Adelaide
Posted: 26th Aug 2018 21:17
Very well Done
fubar
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 26th Aug 2018 21:36
Thanks - but the real challenge awaits - Infiniatity or a chunk rendering distance with FPS booming out of control.

Just need to figure out the best way to re-render the main chunk and just have the "edges" of it re-populate instead of the whole chunk


- We move forward,

- The whole chuck gets re-populated - it grinds to a steady half at each few frames.

- if just re-populate the edge of the chunk your facing then that would only be one row of blocks to add re-position in the memblock

- Instancing world chunks that surround will only duplicate one object - its not really what we want.

Having a 128x128 world of chunks looks better than a 16x16 one- so move around with the camera - great - once move a certain distance - then the edge of it only gets re--populated with new noise heights

Its a tough one...



puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 27th Aug 2018 03:30
if any of you are confused to say what the heck is he on about...

all will come
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 29th Aug 2018 22:13
I think that the only way for long distance views of a 16x16x16 chunk is to send the out vertices and textures to a shader and let the GPU sort the rendering distances out.

hmmm

Can this be achievable!
Santman
7
Years of Service
Recently Online
Joined: 15th Sep 2011
Location: Inverness
Posted: 29th Aug 2018 22:58
I didn't use a shader. I think it depends on the gpu, but I was rendering quite a few. The new Minecraft has some form of occlusion routine, I think that's the only difference really.
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 10th Sep 2018 19:59
Just thought to bump this thread - I havent forgot about it.. I been working on Mesh memblock work n another thread of mine. All will fall into place once i got the smaller tools in place
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 15th Sep 2018 17:56
ok, I think we may potentially have an exploding cube now

Its built up of 24 objects that can be used in physics engine and then after a few seconds once they lay to rest they will fade away and be able to be reused when hit other blocks



A few refineminements - like with UVs etc but the idea is here

You will need cube.png in your media folder

Please let me know what you *all* think

Attachments

Login to view attachments
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 28th Sep 2018 00:17 Edited at: 28th Sep 2018 00:18
This is no way closed - my time is taken up on memblock work so this is a bump more than anything

For a venture like this - it requires memblock programing
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 28th Sep 2018 00:26
Views - WOW
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 28th Sep 2018 01:04
Minecraft requiures memblock work to make possible, please follow my memblock thread
PHeMoX
User Offline
Joined: 9th Jan 2018
Location:
Posted: 28th Sep 2018 11:42
Awesome stuff puzzler2018 and the others who've contributed fubarpk, Santman, Janbo etc. So I guess we can already conclude that for 3D geometry at a higher speed, we need to convert models to memblocks, merge them into larger chunks and go from there?

puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 28th Sep 2018 18:43
Spot on
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 30th Sep 2018 14:38 Edited at: 30th Sep 2018 14:45
As i have been heavily working on memblock creations, i think this version would suit this now as we can import our own OBJ files

Here is a starting of a different style version



Bear with me, i will need to work out to import the texturing/UVs of the OBJ files

This one just uses cube.obj, but can add more to your hearts content

Attachments

Login to view attachments
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 30th Sep 2018 14:52 Edited at: 30th Sep 2018 15:29
Ive added trees, so you can see how its done in the LoadObjects command and BuildWorld command



Untitled.png is example adding a further more objects

Becareful though, we only have 100,000,000 bytes to play with per mesh object
Enjoy

Catch up soon

Attachments

Login to view attachments
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 30th Sep 2018 16:25 Edited at: 30th Sep 2018 16:26
Been thinking something about the far disance chunks - how about we "clone" the main block, but with a bit of alpha transparency, so it doesnt look like it is a clone

but the further away the far lands are the less transparency and nearest ones with a little more transparency, just enough to fake the look and feel of a world



W or S at the moment to go up or down

Catch up later in the week with more

EDIT for this one, please use the attached objs

Attachments

Login to view attachments
fubarpk
AGK Developer
Gold Codemaster
13
Years of Service
User Offline
Joined: 11th Jan 2005
Location: Adelaide
Posted: 30th Sep 2018 17:55
Definitely come a long way
fubar
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 30th Sep 2018 18:22
I have now added frustrum culling and lpha transparency on far instanced chunks



Doesnt have to be exactly like Minecraft. but have goals to acheive on each chunk and then can sail onto the next chunk / level to face bigger game challengers
Santman
7
Years of Service
Recently Online
Joined: 15th Sep 2011
Location: Inverness
Posted: 30th Sep 2018 20:43
"I have now added fulstrum culling"

Eh? AppGameKit has that built in. What have you added?
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 30th Sep 2018 20:49 Edited at: 30th Sep 2018 20:50
Just this bit of code



So every mesh object (of its entirity) behind the camera doesnt get viewed - not individual object culling but whole mesh object culling

Is that still true then ?

Cause if create meshes

x=-10 to 10
z=--10 to 10

and the camera lives in the dead centre then there going to be mesh objects surrounding the centre point. this just removes the ones behind camera to increase FPS a little
GarBenjamin
1
Years of Service
User Offline
Joined: 30th Nov 2016
Location: USA
Posted: 1st Oct 2018 03:32 Edited at: 1st Oct 2018 03:37
Using the GetObjectInScreen() function might be faster although as Santman said AppGameKit seems to already be taking care of this.
The documentation for the SetObjectScreenCulling function says: Sets whether the object will be culled when it moves off screen. By default AppGameKit will attempt to detect when an object has moved off screen, and objects that are no longer on screen will no longer be sent to the render pipeline.

I get that you might want functionality beyond that such as animated blocks to not spend time animating if they are off screen, etc. The GetObjectInScreen function should be able to be used for that and I would think with it being implemented in C/C++ would be ~50 times faster and probably is doing basically what you are doing in your BASIC implementation. Anyway just throwing it out there in case you hadn't seen it.
puzzler2018
1
Years of Service
User Offline
Joined: 8th Oct 2017
Location:
Posted: 1st Oct 2018 07:08
Thanks guys. oooh! SetObjectScreenCulling() - I didn't see this what so ever. Ill check up on this tonight.

Login to post a reply

Server time is: 2018-10-23 09:04:22
Your offset time is: 2018-10-23 09:04:22