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 Classic Chat / Is there anything like a Minecraft clone out there, made with AGK?

Author
Message
puzzler2018
User Banned
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
12
Years of Service
User Offline
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
17
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
User Banned
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
User Banned
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
Retired Moderator
19
Years of Service
User Offline
Joined: 11th Jan 2005
Playing: AGK is my friend
Posted: 26th Aug 2018 21:17
Very well Done
fubar
puzzler2018
User Banned
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
User Banned
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
User Banned
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
12
Years of Service
User Offline
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
User Banned
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
User Banned
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
User Banned
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
User Banned
Posted: 28th Sep 2018 00:26
Views - WOW
puzzler2018
User Banned
Posted: 28th Sep 2018 01:04
Minecraft requiures memblock work to make possible, please follow my memblock thread
PHeMoX
6
Years of Service
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
User Banned
Posted: 28th Sep 2018 18:43
Spot on
puzzler2018
User Banned
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
User Banned
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
User Banned
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
Retired Moderator
19
Years of Service
User Offline
Joined: 11th Jan 2005
Playing: AGK is my friend
Posted: 30th Sep 2018 17:55
Definitely come a long way
fubar
puzzler2018
User Banned
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
12
Years of Service
User Offline
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
User Banned
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
AGK Developer
7
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
User Banned
Posted: 1st Oct 2018 07:08
Thanks guys. oooh! SetObjectScreenCulling() - I didn't see this what so ever. Ill check up on this tonight.
puzzler2018
User Banned
Posted: 29th Oct 2018 00:00
Seems like a long struggle here... But promise - putting things slowly into practice for world game stuff on my meshmemblock thread

This will in turn sort itself out...
puzzler2018
User Banned
Posted: 16th Nov 2018 22:41
Yes - This is possible.

Want to see more? - please let me know

puzzler2018
User Banned
Posted: 6th Dec 2018 22:33
Yes this type of app is perfectly achievable in AppGameKit, next project awaiting
puzzler2018
User Banned
Posted: 31st Dec 2018 18:58
Seen another thread and made me take a look at this, to resolve the face problem out



Hope it sees fit for Minecraft

Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 1st Jan 2019 16:19
Just thought share with with you about Occlusion Culling - I think its imporant for this type of app and many other 3D apps.



But its not straight foward and skill level for this is probably going to be in the Advanced stream of programmers

Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 11th Jan 2019 07:39 Edited at: 11th Jan 2019 07:41
Well, it took forever to port to c#, but here is a working concept for a client!
It has near infinite chunk generation as well as chunk generation on the fly!

You may download and install it here:
https://polatoki.com/games/Polatoki-Craft!/

Also, do you know the article on this forum to fix the line in between each block?
Also, did anyone notice that minecraft has over 100 threads running in the background?
Also, what could cause this tiny app to ever increase in ram?
puzzler2018
User Banned
Posted: 11th Jan 2019 07:43
Wow thanks. Did you create that using agk tier 1 well done


If you did too. Did you use normal agk primitive cubes or mesh memblocks

I'll download and try it out later today

Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 11th Jan 2019 09:09 Edited at: 11th Jan 2019 16:43
It was in tier 1, I ported it to tier 2.
It work with a single threats or multi for smoother experience.
It load fine even in tier 1 with a single thread.
This has 2 threads.

If you see in the media folder, it use a custom dae cube.
Also, this way it could be modded without much issue.
Recources wise, it should be fine...?
Will have to try it out.

Also, it will use many megabyte of disk space!
Once the memory leak issue is solved, we can move on to alpha 2!
puzzler2018
User Banned
Posted: 11th Jan 2019 16:53
Hello

Just tried it and it wirls away loading and then stops the app. Yes there is a memory leak somewhere with it

Look forward to a future update as love to see how it looks and feels by a Tier2 platform
GubbyBlips
5
Years of Service
User Offline
Joined: 20th Dec 2018
Location:
Posted: 11th Jan 2019 17:48
Are you sure puzzler? Which part did you use? Mine was gold. Which platform are you working on?
Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 12th Jan 2019 04:53 Edited at: 12th Jan 2019 05:05
The memory leak is with the c# version of Agk.ReadString();
It occur with Agk.DeleteString() failing to clean up the Agk.ReadString() as describe in the document.

Also, whirl away loading and stop the app?
Could I get a better description?
Also, After 30 minute of it, I end up with over 1.8gb of additional chunk file.

Also, in tier 1, it use a max of 8% cpu from a 8 core, 16 threads cpu.
Is the AppGameKit developer team committing suicide with AGK2?
Is AGK2 build for a pentium 4?
So what if they have to re-create the whole complier?!
Since when is a 3D app using only a single threads for everything?!
We tried simple 3D game with less than 100 object and it lag...
Multi-rendering gpu pipeline?
Minecraft use atleast 20 gpu graphic rendering pipeline(main + workers?) as mention in an article I read once.
Granted it has to be enable in unity3d manually, but there is such as option.
Just angry...
What are you thought on it?
puzzler2018
User Banned
Posted: 12th Jan 2019 10:39
hi

It just shows the attached image when double click the app and then after about 30 seconds the screen disappears and kills its own process

Attachments

Login to view attachments
Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 12th Jan 2019 12:35 Edited at: 12th Jan 2019 12:37
Is that after going like 50 chunk in distance?
If so, it should be fix in alpha 2 or 3.
puzzler2018
User Banned
Posted: 12th Jan 2019 16:53
Hi

No, it just doesnt load, easiest way to show you is by creating some code


Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 13th Jan 2019 12:34 Edited at: 13th Jan 2019 12:40
Well, I tested on a few windows 10 system and it work fine...?
Anyway, try this new version. Alpha 1.1

https://polatoki.com/games/Polatoki-Craft!/

It now has, polygon culling!
Saving up to 5/6 the resources normally used!
I just tested it on a ultra book with intel graphic from over 5 years ago and it run over 30 fps.

Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 13th Jan 2019 12:41
Wow - good man - that works a treat now and im really impressed with your work.

I will still try my damdest to get it going on Tier1 though..

But very well done, keep it going....
Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 13th Jan 2019 12:52 Edited at: 13th Jan 2019 12:56
If you are interested, i'll keep posting.
Trying out the memblock idea on the other post.
puzzler2018
User Banned
Posted: 13th Jan 2019 12:55
Yeah sure, im sure everyone will be intrigued on how its developing on Tier2 as much as i aim to keep developing on Tier1



Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 13th Jan 2019 14:01 Edited at: 13th Jan 2019 14:51
How do you do collision using memblock polygon?
Should it be full binary instead?

EDIT: Does createobjectfrommeshmemblock has collision? Need to test it out...

i assume the reason why agk frame rate drop is because AppGameKit attempt to check all object?
Perhaps paul need to create a function called SetObjectActive(); to avoid that?
Because when there is over 100,000 object, even if their visible and collision is set to off, Agk will not go pass 60 or even 30 fps on some system even if polygon count on screen is 0.
puzzler2018
User Banned
Posted: 13th Jan 2019 14:13
Colllisions on mesh memblocks is quiet cumbersomely difficult for me - im always trying to working on it...

Here is a little taster just using AGKs collisions and cube instancing etc



Press left mouse button (or SPACE) to remove

Press right mouse to add (or CTRL) to add



Attachments

Login to view attachments
puzzler2018
User Banned
Posted: 13th Jan 2019 14:42
Ive found that a copy and paste from here to the AppGameKit IDE doesnt seem to work for Shadey? - some bad characters

can anyone try a copy and paste to see if its my PC or Shadey's IDE setup..

Thanks
Chmava
10
Years of Service
User Offline
Joined: 20th Jun 2013
Location:
Posted: 13th Jan 2019 14:51 Edited at: 13th Jan 2019 15:12
i assume the reason why agk frame rate drop is because AppGameKit attempt to check all object?
Perhaps paul need to create a function called SetObjectActive(); to avoid that?
Because when there is over 100,000 object, even if their visible and collision is set to off, Agk will not go pass 60 or even 30 fps on some system even if polygon count on screen is 0.

What you are doing is creating your own custom 3d object function that seem to skip alot of other kind of processing!
If AppGameKit is checking each object collision instead of another script like unity3d rigidbody then this could be the reason for the lag...
Having a rigid body check if it is colliding is faster then each object checking if something has collider into itself.
...but that can't be true as there is only 3 fps rise when all collider is disabled?

What bloat stuff is AppGameKit processing in the background regarding object?
You have proven that without all these bloat processing, clearly agk could handle a whole lot more polygon on screen!

Well, the test.exe crashed...
puzzler2018
User Banned
Posted: 13th Jan 2019 15:19
Thanks Chmava for that enlightening info.

Ive been trying most of the year to get greatness with FPS by working with MeshMemblocks instead of AppGameKit collisioning / object system.

Ill send a meshmemblock version a little later to see the FPS rise like crazy - but then collsioning and all that stuff becomes a little difficult cause have to implement our own..

We have ultimately suggested that a 16x16x16 chunk seems good when rebuilding / cause need to rebuild when remove / add a block.

and then have surrounding chunk meshes to make it look and feel like a bigger world

Ill have a go at converting the above to one mass mesh and take it from there

puzzler2018
User Banned
Posted: 13th Jan 2019 15:29
Here is meshmemblock version to make one chunk of 64x64x64



But then the rebuilding will be fine for a 16x16x16 mesh but need to do some thinking on the collisioning system.

Login to post a reply

Server time is: 2024-04-19 03:37:33
Your offset time is: 2024-04-19 03:37:33