AppGameKit Studio preorder available

Started by plenatus, March 01, 2019, 17:25:48

Previous topic - Next topic

Rick Nasher

Yeah, that's a good one.

On the plus side:
- drag&drop resources with path included into code for the lazy people I guess.
- no more opening a browser window for help files(can choose to show online/offline  versions apparently).
- no more changing colors to dark after every version update.
- GG Loader showed up in the asset manager for me by itself(not that I can use GameGuru, for way too slow on my old system)
- can enter IP for broadcast.
- ability to add more stuff by TGC such as a Scene Editor view etc(not currently available).


On the bad side:
- fps reduction of 50%, probably due to the asset preview windows using similar code as AGK, which would be running 2 AGK apps at same time?
- didn't see the split code view window yet.
- icon's in bar are too large to my likings, but probsbly will be customizable even further as pretty much every thing's configurable.
- no ability to detach panes from the main window.

I can't think of anything else really.

Must admit that even though I can use it, at present I don't for I'm kinda attached to my current view, plus I rather have full speed on this old barge. lol
Might give it a spin for new projects that require a lot of assets.

_______________________________________
B3D + physics + shaders + X-platform = AGK!
:D ..ALIENBREED *LIVES* (thanks to Qube).. :D
_______________________________________

Derron

People who do "drag n drop of media assets" are either doing very simple games, are following tutorials or are not the coder but the asset creator of a game dev group.
Others do it via "code" (or config files output by other tools in the workflow).


Once you want to do some bigger stuff you will either have an asset creator - who needs advances functionality to achieve what they desire (effects, shader stuff etc.) - or you will use config files as your assets are created partially externally because you need to use some stuff not available in the tool (agk studio here) or you want to avoid double work because the tool (agk studio) does not have certain inbuilt features.

It becomes useful if the IDE becomes way way way more feature rich (Godot / Unity style). Having an asset "manager" or things like a "color picker" is something only rapid prototype games could benefit of. The bigger your projects become the less important is a manual color pick compared to predefined colors for consistency - and eg. an inbuilt color functionality to allow "suiting" variations ("color.adjustSaturation(0.05)").

Same to say for assets: only static assets can be managed that way. Have your levels created dynamically? With maybe even moddable content (external files)? Stuff won't work in such IDEs.


So instead of providing such functionality they should:
- concentrate on basic IDE features (auto complete in "intellisense manner", refactoring, live debugging)
- add IDE convenience stuff (adjustable panes, themes)
- add plugin-ability so people could create their own asset browsers or "productivity helpers"


bye
Ron

Qube

#17
Quote from: blinkok on March 03, 2019, 05:12:07
As far as AGK Studio is concerned. Can someone tell me how it will improve development over the original IDE?
Very good question. There are plans to make it more visual for scene creation although this side is personally not for me but I can see how it would be much welcomed.

The built in media viewer is a great help. You can click on any image or model and see how it looks. You can also click on any sound / music and play it ( even OGG files ). This I find very handy as I'm terrible for remembering what each and every sound erm sounds like, so it's great to be able to quickly preview it.

The IDE also has built in help which is much more convenient over the online help of AGK classic. The speed of the IDE is also a huge improvement over the Geany based one.

From what I can tell the new AGK Studio is just the beginning of many improvements. It definitely has the feel of pushing AGK to a more professional based environment while still keeping the easy to learn syntax.

The IDE's popup helper menu's are also much smarter and more akin to that of Visual Studio quality. For example when you write something like "If myArray[" it'll show you all the parameters of the array and the max values.

As it's still in alpha then of course not everything is present and good to go but I can see the potential in the updated approach. The IDE is a great improvement but won't magically make your games better over using AGK Classic.

On the negative side there are a few issues on the Mac side that I'd like sorted which stop me moving over to AGK studio right now. Hopefully those will be sorted by the next update(s). Overall I'd say this is a great move for AGK and I just hope that TGC make the most of it and don't do half arsed implemented features. They have a great opportunity to improve AGK to the next level and as a fan of AGK I really hope they do take it to the next level.

Quotefps reduction of 50%, probably due to the asset preview windows using similar code as AGK, which would be running 2 AGK apps at same time?
There are a couple of separate issues here. The first is that the new IDE is an AGK app itself so during development with the IDE open you're going to experience a drop in FPS as the IDE is taking up more CPU than the previous more text based editor.

I'm sure they could idle more of the IDE while the AGK app is running though to help with this. The biggest issue is that AGK at some point over the last 5+ months has dropped 50%+ of it's raw FPS speed on MacOS ( must test Windows ). For example a blank Do Loop on AGK version 2018-07-12 runs at 700FPS, the same on later versions of AGK and the new AGK Studio run at 290FPS. Something very odd going on there.
Mac Studio M1 Max ( 10 core CPU - 24 core GPU ), 32GB LPDDR5, 512GB SSD,
Beelink SER7 Mini Gaming PC, Ryzen 7 7840HS 8-Core 16-Thread 5.1GHz Processor, 32G DDR5 RAM 1T PCIe 4.0 SSD
MSI MEG 342C 34" QD-OLED Monitor

Until the next time.

Rick Nasher

#18
@Qube
QuoteThere are a couple of separate issues here. The first is that the new IDE is an AGK app itself so during development with the IDE open you're going to experience a drop in FPS as the IDE is taking up more CPU than the previous more text based editor.
You are probably right on the money there.
I also did a feature request turning the previews optionally off completely(not just hiding). Actually, I launched a feature request thread. lol

QuoteI'm sure they could idle more of the IDE while the AGK app is running though to help with this. The biggest issue is that AGK at some point over the last 5+ months has dropped 50%+ of it's raw FPS speed on MacOS ( must test Windows ). For example a blank Do Loop on AGK version 2018-07-12 runs at 700FPS, the same on later versions of AGK and the new AGK Studio run at 290FPS. Something very odd going on there.
Didn't notice this on Windows so must be a Mac thing. They really need to backtrack and find out where went wrong before continuing, but they probably have too much on their hands with deadlines for the upcoming release. 
Perhaps a bit more than they can chew all at once?

If really done in AGK, then I think the initial thought of doing an IDE in AGK itself, was a bit of mistake, for might work well on medium to high end, but not so much on lower spectrum.
People *will* notice the fps drop and complain. So yeah good idea at first, perhaps not so much in real life. But who knows, perhaps is fixable by your suggested ideas.

Did you inform them on GitHub?
(no, just checked. Perhaps an idea to do so?)

_______________________________________
B3D + physics + shaders + X-platform = AGK!
:D ..ALIENBREED *LIVES* (thanks to Qube).. :D
_______________________________________

Derron

If you code your application "event based" then there won't be that much performance issues "widget wise".
Instead of doing "DrawWidget()" once every 1/60 second or so, you handle the events incoming by the OS telling you that area XYWH of your app was overdrawn by something else (content invalidated). The application then forwards this event to the contained widgets (eg a "Panel") which either informs its children (as it covers all children only affected panels will inform their children) lets each widget handle it on its own.
So by default stuff is only re-drawn on init - and on request of the OS.
Of course you could create a timer (or listen to certain events) to redraw your stuff way more frequent. So if you eg. have a 3d animation preview window or so.
BUT ... if you do not play an animation, you would not need to update everytime. You might consider drawing to the widget's canvas insteand and save on cpu cycles (1 time software blit).



Performance issues happen if the background parsing aka "editor intelligence" (background compiling of live changes, help updating, ...) is done improperly or even in the main thread.


bye
Ron

Rick Nasher

@Derron
So now the big question is: Are they actually doing it properly?
_______________________________________
B3D + physics + shaders + X-platform = AGK!
:D ..ALIENBREED *LIVES* (thanks to Qube).. :D
_______________________________________

GaborD

Quote from: Derron on March 03, 2019, 07:26:57


So instead of providing such functionality they should:
- concentrate on basic IDE features (auto complete in "intellisense manner", refactoring, live debugging)
- add IDE convenience stuff (adjustable panes, themes)
- add plugin-ability so people could create their own asset browsers or "productivity helpers"


bye
Ron

Agree to this.
I think trying to go up against Unity and UE4 with a small team is futile, better to stick to your niche and do that well.
But they are experienced and know this. I doubt they plan to meddle with the core target audience.

Right now they have a good USP with the Blitz style coding approach, which a considerable amount of people prefer over a clicketyclack blackbox Unity style environment.
I feel if they can raise the graphical fidelity to a modern standard while maintaining the current coding approach and maybe add a non-mandatory 3D editor they could have a winner on their hands.
Yes, it won't be Unity or UE size (the non coder audience is overall much bigger), but like I said, no point in trying to compete against millions of budget and huge teams.

I would like to see an easy to use plugin / addon system that makes it easy to securely share, I think user addons would be a big boost to functionality and popularity.

Maybe putting their user-store more into the spotlight would be a good idea too.
Just to add a bit of motivation to users helping each other and making plugins and addons. An active connected community is key to success.
There is also this weird split between the Steam community and the main forum, not sure how to solve that though.

Steve Elliott

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

blinkok

#23
This looks particularly useful

Qube

Now that is well cool. What a great way of being able to tweak things without having to manually change code and then run over and over again. A quick REM statement and in realtime you can then change values and see it live + your source code is updated to match, I like that lot :) - Fantastic for routines that have a lot of variable interaction.

This is a really useful feature for coders and not just a fluffy marketing piece, nice one :)
Mac Studio M1 Max ( 10 core CPU - 24 core GPU ), 32GB LPDDR5, 512GB SSD,
Beelink SER7 Mini Gaming PC, Ryzen 7 7840HS 8-Core 16-Thread 5.1GHz Processor, 32G DDR5 RAM 1T PCIe 4.0 SSD
MSI MEG 342C 34" QD-OLED Monitor

Until the next time.

Naughty Alien

..oooorayt..now how do i load a lightmap..  ;D

Derron

Is "seperator" really recognized by the IDE ... wow :-)


Thought about the very same feature (hot code editing) these days too - think it should be possible with BlitzMax too (if you build special code around variables).

bye
Ron

GaborD

Great feature, will save a ton of time when finetuning projects.

Henri

I guess hardcoal was on to something with his editor ideas  :D

-Henri
- Got 01100011 problems, but the bit ain't 00000001

Derron

Would like to see how they create complex objects with links to existing stuff etc.

It is useful to setup integer values or URIs for existing types - but as soon as you need to want to adjust some kind of "array" with existing objects (eg add another enemy) it will become more complex. This only works if you prepare your data accordingly.

If they allowed to reload their scripts (it is an interpreted language?) then you could live-update your code and re-execute it (or at least the functions would then be updated / changed).


bye
Ron