SonyWWS / ATF

Authoring Tools Framework (ATF) is a set of C#/.NET components for making tools on Windows. ATF has been in continuous development in Sony Computer Entertainment's (SCE) Worldwide Studios central tools group since early 2005. ATF has been used by most SCE first party studios to make many custom tools such as Naughty Dog’s level editor and shader editor for The Last of Us, Guerrilla Games’ sequence editor for Killzone games (including the Killzone: Shadow Fall PS4 launch title), an animation blending tool at Santa Monica Studio, a level editor at Bend Studio, a visual state machine editor for Quantic Dream, sound editing tools, and many others.
Apache License 2.0
1.89k stars 262 forks source link

How can we improve ATF documentation? #26

Closed gstaas closed 7 years ago

gstaas commented 9 years ago

@gstaas @vkashkash @ColinCren @silvesthu @RomainBL @JelleVM @pdrasko @vorptronica @fuleshu @mstum @RoyAwesome @lordmortis @StirfireStudios

Because of your interest in ATF, we want your feedback to help us improve ATF documentation.

The fundamental question is: What would help you learn and use ATF? In reflecting on this, you might want to consider:

Please send responses to gary_staas@playstation.sony.com by Friday, October 3, 2014. Or just leave your comments on this issue. Thanks!

JelleVM commented 9 years ago

I found the learning curve of ATF incredibly steep (though worth it in the end), compared to learning e.g. Qt. I think there are several things that ATF could greatly benefit from to get people started quickly:

mstum commented 9 years ago

I haven't had much chance to play around with ATF, but I agree with Jelle about Sample Projects. There is a lot of cool stuff in there, it's just overwhelming at first. The clarifications from #6 helped a lot. May be a 5 Minute Elevator Pitch/10000 feet overview video could help.

JelleVM commented 9 years ago

Ok, I gave it some more thought, and I think that the hardest part of learning ATF for me was how to connect all the strings, and to see what components do exactly what. For example:

(This is by no means an exhaustive list.) In the end, I found the answer to nearly all the above (I think/hope :smiley:), but all of these combined make for a very steep learning curve. What would be really good, would be a little sample project and/or video tutorial making that sample, in which you show off 1 behaviour/service at the time. Your users can then put together the blocks they need into their own application.

silvesthu commented 9 years ago

Besides ideas above, I think not all developer is not going to start a new project based on ATF. Difficulty of cooperating is another important aspect for users. So,

Since I haven't read through all parts of ATF, apologize for any misunderstanding.

gstaas commented 9 years ago

@silvesthu I want to make sure I understand your points.

JelleVM commented 9 years ago

Also: more WPF examples. :-) Everything is in WinForms at the moment, which in my opinion is becoming increasingly obsolete with the awesomeness WPF provides.

silvesthu commented 9 years ago

@gstaas Apologize I haven't read through much detail. Here's my thoughts.

vorptronica commented 9 years ago

I second the need for WPF documentation. The current single WPF example is woefully inadequate for a newbie to MEFand ATF. A conversion doc that gets into more details of how you might convert existing samples to WPF would be welcome as well. -Len

julianneh commented 9 years ago

@JelleVM @vorptronica Thanks for the feedback on WPF. More WPF content is on the way! The existing sample app will be enhanced, a new sample app or apps are coming (either a full-featured showpiece app or a bunch of bite-sized samples, or eventually both), and the documentation will be getting some major improvements too. The goal is to bring our level of WPF support up to parity with our WinForms support. Most of our internal customers have been using WinForms so that's been the main focus of our efforts in the past, but I think that will start to change as we bring WPF up to first class citizen status and make it a more attractive option. I agree - WPF is the future!

JelleVM commented 9 years ago

Yeay, great news! I already mentioned this, but I don't think it can be overstated: having many 'bite-sized' samples is generally much more instructive to the newbie than a full show piece. Many programmers can put building blocks together to make something new (and they'll enjoy it), but filtering all the useful bits in a complicated beast like the LevelEditor can be a nightmare. And having both is better, of course. :D

RoyAwesome commented 9 years ago

Personally, I ran into a big issue trying to figure out how I could do certain things. I had a document that I wanted to create multiple editors for (For example, a text file that I could either view as plain text, or parse it and show it as a bunch of game objects and edit that way). I also ran into issues writing my own serialization format (I was writing a Custom Map Editor for Dota 2, and they have their own notation for game objects).

The examples are pretty great, but trying to do anything outside of what those examples show is incredibly esoteric and it's very unclear what things can do or how they interop with eachother.

gstaas commented 9 years ago

I've been modifying the documentation in the wiki to address some of the issues I've seen here.

I'm now working on ideas for "small projects" showing how a single component or feature works. In addition, as new WPF content is added to ATF, I'll be writing about it.

Your ideas on improvements and comments are very welcome!

kiwidoggie commented 7 years ago

I've been trying to figure out https://github.com/SonyWWS/ATF/wiki/Value-Editors-and-Value-Editing-Controls for the longest time. I am using WPF and it seems that the WPF counterparts of ATF don't have any clear documentation with the variations from the WinForms counterparts. I'm not sure if I'm just missing it, but I've been doing much trial and error with ATF in WPF.

EDIT: I also am not using DOM.

abeckus commented 7 years ago

The WPF/ATF lacks features, docs, robustness, it is more of a work in progress than full feature framework. WinForm/ATF is under development for many years so it is more robust and feature complete than WPF counter part. Unfortunately, at this point there is no plan to improve WPF/ATF. Winform/ATF offers direct2d, skinning and lots of control and editors.

note: using ATF without DOM would be harder since large part of ATF implemented using DOM. Alan.