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 / Suggestion : AGK studio requests Thread.

Author
Message
haliop_New
User Banned
Posted: 6th Feb 2019 09:09
Yeah, I know it will take time and yeah I'm sure you have a lot to do about it.
but I do have some requests, mostly one primary and -some small ones.


PLEASE PLEASE PLEASE

SUPPORT ANY KIND OF LANGUAGE IN BITMAP FONTS and PLEASE PLEASE PLEASE
add the ability to do all kind of manipulations on Texts such as char one with a bitmap font img and another char with another bitmap font img , change sizes of specific chars in the same Text.
rotate a char in a text by offset rather than from 0,0 .

and please, Add a bitmap font creator/editor to the studio you just simply cannot go wrong with the right Fonts once you can manipulate them as one would like.
Also please please add the ability to join pngs to one atlas image rather than using other apps, and once it's done it will break down every separate image inside that atlas texture with X,Y SizeX,SizeY etc...

the last request is the ability to change a sprite coloring in a different fashion such as (without using memblocks)


so if I have a simple sprite of a balloon, the balloon is white and has a shiny section, I want to be able to change the entire color of the ballon but not the shiny section... so something like:

setSpriteColorByColor(spriteId,colorToChangeRed,colorToChangeGreen,colorToChangeBlue,changeToColorRed,changeToColorGreen,changeToColorBlue) with or without alpha
so colorToChange is the selected color already found in that sprite and the changeToColor is the new color.

Please Please!!!
it will be extremely helpful!
puzzler2018
User Banned
Posted: 6th Feb 2019 09:29
I think I can help with the balloon thing by using direct image memblock code. Shall see what I can do there later
haliop_New
User Banned
Posted: 6th Feb 2019 09:47
I would love the help! thank you.
haliop_New
User Banned
Posted: 6th Feb 2019 09:48
but think about it , a simple command like this will enable us to manipulate everything regarding sprites...
such as hair color with much ease... or armors and such.. just like channels in 3d models.
haliop_New
User Banned
Posted: 6th Feb 2019 09:55
and another little request which I think is very easy to code...
when you search for a line or variable in the code... can get a button like
"Search for declaration" so once hitting that button it will take you to the declaration of that variable/ function / type etc.. instead of pushing the "find" many times until you find it.
Bengismo
6
Years of Service
User Offline
Joined: 20th Nov 2017
Location: Yorkshire, England
Posted: 6th Feb 2019 11:47 Edited at: 6th Feb 2019 11:50
For the balloons:

You could just change the colour in a memblock if wanted which is easy:



Or even better way really is to use a sprite shader to allow you to control the color of certain areas.


In this case...if the alpha value at a pixel is >127 then the sprite color isnt applied to it, if it is over 127 then the sprite colour is applied.

This way you can have your sprites continiously changing colour while certain areas on the sprite dont change colour at all. ou could actually have lots of areas of different colours.

Agk can do this as it is.
haliop_New
User Banned
Posted: 6th Feb 2019 12:52
thanks! will try it right now!
Ortu
DBPro Master
16
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 6th Feb 2019 18:26
Full multithreading support would be awesome but failing that, I would fall over to at least see media asset loading on a separate thread so that media can be loaded in the background
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
Rick Nasher
6
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 6th Feb 2019 18:34
While the topic says "AGK studio requests Thread." I have one:

TGC: Please Rename the Plane object to Quad and vice versa, as is I think they should have been called in the first place, following conventional nomenclature.

May I have your votes please?


puzzler2018
User Banned
Posted: 6th Feb 2019 19:10 Edited at: 6th Feb 2019 19:12
Should they?

A AppGameKit plane as 12 vertexes and a quad as 4 - i really dont know what the Quad thing is there for to be honest. - it doesnt do/create anything - or does it?? and must be blind
blink0k
Moderator
11
Years of Service
User Offline
Joined: 22nd Feb 2013
Location: the land of oz
Posted: 6th Feb 2019 19:40 Edited at: 6th Feb 2019 19:44
Quote: "Search for declaration"

In the IDE : If you right click on a variable or function reference and select Go to Tag Definition

Quote: "i really dont know what the Quad thing is there for to be honest."

Quads are really handy for rendering to a canvas. Have a look at the Bloom example in the projects folder
Rick Nasher
6
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 6th Feb 2019 22:32
I always thought as in Blitz3d a quad was 2 triangles forming a square surface and a plane an endless surface, so should be similar.

From the Blitz3d manual:
Quote: "Introduction to Planes
Planes are a simple way to add large, flat surfaces to the world. Planes are useful for such things as ground, sea, sky, clouds and so on. Just about every 3d game will use planes in some way or another.

Creating Planes
How do you create a plane ? - Easy, just use the CreatePlane instruction:

;create a simple plane.
plane=CreatePlane()

Manipulating planes
By default, a new Plane is positioned at 0,0,0 and faces upwards. However, you may want the plane to face a different direction, or to be moved up or down. To do this, you just need to use the standard entity commands.

For example, you might want to use a plane for a layer-of-clouds type effect. In this case, just rotate and position the plane as necessary:

;create clouds plane.
plane=CreatePlane()

;rotate plane so it faces downwards.
RotateEntity clouds,0,0,180

;and position it up in the sky!
PositionEntity clouds,0,100,0

So now we have a plane that is going to represent the sky, how can we make it look realistic ?

The easy answer would be to Texture it !, as you shall see later on in these tutorials - Blitz3D has ALL the answers.

If you take a careful look at most of todays top titles you will notice that most of the sky scenes contain more than one layer. Usually this consists of 2 - sometimes even 3 planes. The very top plane contains static objects such as the Sun, while the plane infront has a cloud layer. This can be achieved by using the BRUSHFX instuction (to make the texture slightly see-through) -in conjunction with an animated texture, that is slowly wrap-scrolling. (And YES, B3D can do this effect with ease!)
"



Then again, in Unity a quad is a 1x1 unit square 90 degrees upright and a plane a horizontal 10x10 units square https://docs.unity3d.com/Manual/PrimitiveObjects.html



Confusing all these different interpretations. You'd think in 3D modeling this would have a standard primitive definition. Ah well, beter leave as is then.

Ortu
DBPro Master
16
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 6th Feb 2019 22:37
Random trivia: It used to be "plain" in DBClassic
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
puzzler2018
User Banned
Posted: 6th Feb 2019 22:37
I agree but im just working on the premise of the good ole english language

Single =1
Doub = 2
Treb = 3
Quad=4
Hex=6
Oct=8
God knows was decohedran is lol

etc
etc

Barmy I know lol
Ortu
DBPro Master
16
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 6th Feb 2019 22:44 Edited at: 6th Feb 2019 22:46
Dodecahedron is an object with 12 faces.

In 3d terms a quad is a polygon consisting of 2 triangles joined as a single face. A planar surface of multiple quads would typically be a strip or grid depending on number of rows
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
puzzler2018
User Banned
Posted: 6th Feb 2019 22:50 Edited at: 6th Feb 2019 22:51
Awesome explanation

2 Triangles - 3 vertices each = 6

Does quad have non shared vertices then - 3 +3 - 2 shared vertices = 4

If shared vertexes then its a plane -


Good thought Rick! LOL - that would be the same blooming thing but single sided plane
puzzler2018
User Banned
Posted: 6th Feb 2019 22:56
I need to develop a TRIANGLE_STRIP technique - then an endless terrain on Perlin Noise would be good to see
Ortu
DBPro Master
16
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 6th Feb 2019 23:03 Edited at: 6th Feb 2019 23:10
It depends, an object file can be saved with shared vertices (and multiple indices) but most rendering engines will split them into triangles internally regardless. It's generally better to use fewer vertices with indices than to duplicate vertices, but it comes down to how a face should handle shading

Doesn't matter too much on single quads or flat planes, but the internal splitting of non triangles can cause unexpected folds and creases if the rendering engine splits it along the opposite edge from your modeling app for more complex objects

Personally I model in quads because they are easier to work with and subdivide cleanly, but triangulate before exporting.

Use shared vertices to smooth light across faces, and split edges where you want light to have a hard transition.
http://games.joshkirklin.com/sulium

A single player RPG featuring a branching, player driven storyline of meaningful choices and multiple endings alongside challenging active combat and intelligent AI.
puzzler2018
User Banned
Posted: 6th Feb 2019 23:15
Wow - thats a perfect explanation. Thanks Ortu

Another task for me to load an OBJ file in a sort the shared vertices/normals out automatically

A quick equation to resolve light / normals on those vertexes is

Normal = sqrt(nx*nx + ny*ny + nz*nz);
if Normal>32 then NormalY=1/Normal else NormalY=1

But this is for another day

puzzler2018
User Banned
Posted: 6th Feb 2019 23:25
Thats for a cube shape btw lol

Normal for X and Z is probably similar probably worked out at the angle of the object

Will have to have a think
haliop_New
User Banned
Posted: 7th Feb 2019 01:02
Do you know what I would really like to see in AppGameKit?
a
TRY thing like in other languages.

I just thought of it because maybe in my app I want to save all last data even if for a small session of playtime so the next time the players enters the game everything will be as he left it.
however, this might be a problem with the current stage of AppGameKit why?
cause if I'm saving data for example and ... the phone is shutting down or something has happened and the last saved data is messed up
the next time I'll open my app/game the game might crash since not all data was saved correctly.

I will get an error when opening the file as it won't have the right ending of it which may result in failure to load everything which means the game will not act as it should which may result in a loss of a player or more...
so if we will have a
Try
// commands
endTry
Catch (some kind of error)
endCatch

it will be extremely helpful so that our apps won't crash if something will go wrong...
haliop_New
User Banned
Posted: 7th Feb 2019 01:05
this also comes after I saw an ANR on one of my apps on google
I have never experienced an ANR before on AppGameKit (which is awesome!!!!) but yeah I guess it will happen from time to time.
Rick Nasher
6
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 7th Feb 2019 11:02
@puzzler2018
Should be similar in AppGameKit that is indeed. lol
But seriously this has been very educational for explains why my 3D building was looking weird at first (no sharp edges) when exported with wrong settings.
Seen the same thing in the Lego blocks thread.

@haliop_New
You mean something like a saved data verification command?

Hmm. The section in your app that loads data(images, models and such) doesn't have a loaded data correctly flag, such as:

haliop_New
User Banned
Posted: 13th Feb 2019 01:16
one more suggestion.

a little tip tool that will highlight when you are setting a sprite feature with a text property and vice versa
I find it that sometimes I get confused with these 2.
such as:

setSpriteColor(spriteId,getSpriteColorRed(spriteId)+1,getSpriteColorGreen(spriteId)+1,getSpriteColorBlue(spriteId)+1,getTextColorAlpha(spriteId)+1)
it happens sometimes and it made me think what if the IDE could point where something is wrong or might be wrong...
and obviously, this tip tool can be disabled if you don't want to use it ... but a few warnings about the coding process will be awesome!

another thing came to mind as I wrote it concerning colors...
what if I have some vars such as
somethingRed
somethingBlue
somethingGreen

when you are setting a sprite color or a text or an object or whatever with color
if the IDE sees
setSpriteColor(spriteId,somethingRed,somethingBlue,somethingGreen,255)
you can see that the blue comes before the green which is wrong... then a tip tool can mark that and say "Hi, are you sure "somethingBlue" is at the green area of that sprite color?"

i know its kinda fancy but its pretty nice to have especially for beginners (like my students )
Rick Nasher
6
Years of Service
User Offline
Joined: 25th Jul 2017
Location: Amsterdam
Posted: 13th Feb 2019 11:15 Edited at: 13th Feb 2019 11:15
Tooltips would be nice. Would prevent having to look at the help file every time.

+1

Login to post a reply

Server time is: 2024-03-28 19:15:46
Your offset time is: 2024-03-28 19:15:46