I'm new with AGK

Started by Santiago, May 12, 2020, 14:39:36

Previous topic - Next topic

Santiago

Hello! Yesterday, after doing some research, I was encouraged to follow the advice that I was given and buy AGK classic.  ;D ;D ;D ;D ;D ;D ;D

Take advantage of the steam discounts, and buy the package that brings shaders and other things, thank God, in my local currency, since here in my country the dollar went up and almost 1 dollar = 125 Argentine pesos.

The good thing about AGK that I could notice.
-------------------------------------------------- ----
Shaders
Windows & IOs
Android :) <- this is realy good
VR <- this is very good too
Basic and friendly environment.
Good compilation speed.
friendly functions.
friendly file and directory environment.
Discord and active community, respond and help with great will!
a lot of variety of demos.
Skybox - Sun, friendly.
Very well documented help


-------------------------------------------------- -------------

Loadobject, no texture, why ??

I was surprised to find that the loadobject function loads the mesh but not the textures, and that I have to work a little and adapt my old models so that I can load them without having to process one by one.

I don't even have 24 hours with AGK yet, but I suppose this can be improved by doing a custom function to load mesh.

Although technically, I am going to have to reconvert my models, to adapt them to have more optimized textures, and adapting them to the method used by AGK, which is very similar to that of lumion, 1 material per mesh.

I saw that there are some functions made by users to automatically load objects with textures, but for that, one has to have the file perfectly armed.

That makes me think, how easy it was to use loadmesh in blitz3d.

I imagine there is a logical and technical reason why AGK does not automatically load textures and materials. I am not an expert in these deep details.


--------------------------------------------------
Game graphics quality

It also seemed to me that the quality of the demos, for the most part, has a finish that could be better, I did not find 3D games that fascinate me, or that open my eyes as to what I think can be achieved with AGK.

If AGK has shaders, shadows, it can handle a lot of polygons, I don't know how it works with textures, I don't see why there are no fascinating graphics games. (in a day of searching you may not have found anything, but I'm sure there is)

-------------------------------------------------- ---------


I am really excited about AGK.
seems to be solid and stable.

At the moment, I will do my classic basic rookie tests to learn how to use AGK.


place objects (done)
move them (done)
types (done) create, delete, rotate
make a car and make it move
make a tank that rotates its turret and shoots
make a boat that floats precariously
work on environment variables, sky, clouds, fog, water, earth
modify demos and play to learn about their functions.
require the engine to test its limitations.
Particles, smoke, fire, clouds, marks

And then Generate a small game to manage to work its models, textures and achieve a good graphic quality, using everything AGK has to offer. surely a car game.

I think the main thing is to find the advantages and disadvantages, in order to exploit AGK as much as possible.

With Blitz3D every time you find a limitation, manage to dodge it thanks to the grace that b3d offers, such as, not having a floating point, that distant objects do not vibrate, handle particles, water reflections and 3d water manipulating vertices in an optimized way.

I hope to find in AGK that capacity that B3d has to surpass itself.

blinkok

There is an App on the AppStore or Google play called AGK Player (Search for AGK Player)
Download it and install it on your mobile device
Then from the IDE select the broadcast option
This will broadcast the app to your mobile device and play your game on your phone instantly

Santiago

 :o :o :o excelent!, tomorow i go to try that! thanks!

GaborD

Quote from: Santiago on May 12, 2020, 14:39:36
I did not find 3D games that fascinate me, or that open my eyes as to what I think can be achieved with AGK.

AGK is very flexible, you can push it as far as you want to.
There are some limitations, like no support for DXT compression or FP textures, so we have to work around those issues, but you can get really high quality rendering if you are willing to go down the rabbit hole and get your hands dirty.


Santiago

i google about FXT compression, but i can't found about FP Textures, what is that?

Quotebut you can get really high quality rendering if you are willing to go down the rabbit hole and get your hands dirty.

i'm want that rabbit!!    ;D

Xaron

FP stands for floating point as far as I'm aware of.

Santiago

This is me happy:) with my fist conection with my phone!  ;D



With blitz3d i learn to go around the void of no floating point, sometimes is hard, but allwas find the way.

but Floating point in tetures?

Xaron

Nice!

Yeah floating point in textures. That is often useful to "misuse" the shader to give them a heap of data to calculate with.

markcwm

FP is short for fragment program, it's manipulating textures from shader.

Xaron

Oh the fragment shader, ok. Never heard about the term FP texture, just thought you mean floating point textures which allows for some nice stuff as well.

markcwm

Well I confess I had to look that up, LOL. I don't really use abbreviated terms.

blinkok

Broadcasting is just the wildest thing isn't it?

Santiago

QuoteBroadcasting is just the wildest thing isn't it?
yeaaaaa  8)


ok, i have shadows, i manual load a texture, but i can't make child$ = getobjectmeshname(avion,i) works.
my idea is try to loadobjetcts with a own function, but dosent work yet.




global avion as integer
avion = LoadObjectWithChildren("\objetos\aircrafts\e4n\e4n.x")
//avion = LoadObjectWithChildren("\objetos\aircrafts\zero\zero.b3d")
SetObjectPosition(avion,0,11,0)
SetObjectCastShadow(avion,1)
setobjectscale(avion,eo,eo,eo)

n_childs = GetObjectNumChildren(avion)
global ima as integer
ms=GetObjectNumMeshes(avion)
child$ as string
if ms > 0
ima=199
for i= 1 to ms-1


child$ = getobjectmeshname(avion,i)
//tt$= GetObjectTextureName(avion,i)

tt$ = "\objetos\aircrafts\e4n\texture.png" //diffusemap.png"
if tt$ >""
//tt$ = "\objetos\aircrafts\e4n\"+ tt$
loadimage(ima,tt$)
if ima > 0
setobjectmeshimage(avion,i,ima,1)
endif
endif
if lower(child$) = "sombra" then SetObjectMeshVisible(avion,i,0)


inc ima
next
endif

Steve Elliott

#13
Hey great progress!  I've not used the 3D side of AGK, so maybe blinkok could help?  https://www.syntaxbomb.com/index.php/topic,7504.0.html
Win11 64Gb 12th Gen Intel i9 12900K 3.2Ghz Nvidia RTX 3070Ti 8Gb
Win11 16Gb 12th Gen Intel i5 12450H 2Ghz Nvidia RTX 2050 8Gb
Win11  Pro 8Gb Celeron Intel UHD Graphics 600
Win10/Linux Mint 16Gb 4th Gen Intel i5 4570 3.2GHz, Nvidia GeForce GTX 1050 2Gb
macOS 32Gb Apple M2Max
pi5 8Gb
Spectrum Next 2Mb

3DzForMe

Agreed, awesome progress Santiago. I've only played around a little in 3d on AGK, I'm quite pleased with the results so far. My next challenge is to load a texture in 2d, and draw, in2d, on the loaded. Jpg or. Png. That's how I'm making height maps at the mo.
BLitz3D, IDEal, AGK Studio, BMax, Java Code, Cerberus
Recent Hardware: Dell Laptop
Oldest Hardware: Commodore Amiga 1200 with 1084S Monitor & Blitz Basic 2.1