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.

DarkBASIC Professional Discussion / A call for users to help write articles for improved documentation

Author
Message
Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 13th Mar 2010 14:03 Edited at: 13th Mar 2010 15:08
Introduction

Although I mentioned my work on the DBP documentation briefly in another thread, I would like to announce this request more publicly.

I am in the process of rewriting the DBP documentation which will be included with the new release of PureGDK 2.0. Yes, you heard me. New and improved documentation! Documentation that's helpful, a quick reference, and concise.

The new documentation is aimed to be much clearer, searchable, easier to navigate with multiple hierarchical indices, cross references, library summaries, many commands will be rearranged into more obvious categories, and additional documentation for libraries such as Advanced Terrain, 3D Cloth & Particles, and Game FX commands will also be included.

This documentation, albeit for PureGDK, will still be very applicable to both DarkBasic Professional and DarkGDK users. It will be freely available to everyone in a very convenient .chm file as well as portable html files.

For this effort I've written a complete documentation parser which builds all of the html files from easy to edit and easy to maintain text files. This will allow for seamless documentation generation and, in the case of PureGDK, for all supported languages within seconds (with anticipated support for PureBasic, C, C++, and more).

Everything will be cleanly formatted, links will be checked (no dead links!), and changes will propagate automatically throughout the rest of the documentation.

All of the documentation tools I use will be provided in the PureGDK SDK so you're welcome to use it in your own projects and even contribute to the official documentation by providing updated entries to the templates.

I hope to attract a wide variety of users from all different languages to DBP through PureGDK and I want to provide the most professional first impression as possible. This will require documentation that is clear, helpful, and easy to navigate (a far cry from its current state).


How you can help

I am already taking care rewriting the original documentation. What I would like to invite you to do is to help create articles which describe how to use fundamental components of the engine such as collision, lighting, effects, shaders, BSP, terrain, and so forth.

Code snippets showing off special effects are welcome but what I would really like to see are explanations describing how a particular function or set of functions from a library works.

For example, a good article would describe how to use the built in light mapping commands by explaining what each important function does in relation to the desired effect. Or an article describing how to use the limb commands, what is means to link vs glue something, and provide illustrations, screenshots, or working code to provide an example.

You can find some examples of how to write a simple article or tutorial by looking at some of the great stickies on this forum. There are also some examples on TGC website here:

http://developer.thegamecreators.com/?f=dbpro_tutorials

I also welcome screenshots of games or demos that you've created that can be included to show off some of the capabilities of the DBP engine.

Code you provide here should be written in DarkBasic Professional. Unless commands exclusive to PureGDK or DarkGDK are used, it should not be written in PureBasic or C++. I'll take care of converting anything to the correct languages as necessary.

If you use any media in your tutorial or demo please provide it with the understanding that this media may be provided with the documentation for others to use and should be under an unrestricted license.

I hope we can all work together to improve the resources available to DarkBasic Professional, DarkGDK, DarkGDK.NET, and PureGDK users so we can all build bigger and better applications.

Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 13th Mar 2010 14:10 Edited at: 13th Mar 2010 14:11
This post reserved for future use.

Dragon Knight
19
Years of Service
User Offline
Joined: 10th Jan 2007
Location: Newcastle
Posted: 13th Mar 2010 15:54 Edited at: 13th Mar 2010 15:59
Ahm something I would have found useful at the beginning might have been a maths documentation on how it can be used within games.

For example:
sin and cos to create circle formations.
Pythagoras theorem to calculate distance between two points / objects
How to get Polygon Normals
How to find out if lines are intersecting
Swing Physics, (I loved doing this!) Ninja Rope!
Differentiation and Integration mainly for physics

Vertex Manipulation, for example I had a game where you could hit the ground and the entire ground would have a sin wave run trough it, pretty amazing looking but needed allot of optimization to run smoothly.

Hmm I think I'd actually love to write a few tutorials on these.

Other than that I would have loved to see more full game examples like I got on DB-Classic, the tunnel game was really fun and all I did to learn from it was change a few values until I started to understand the basics of programming, then with the help of the community, improved and improved.


Other Documentation could include Game Performance Enhancing,
Which could include simple information like, reducing the amount of polygons each model has, reducing colour depth in textures to 256 or less, and keeping them in power's of 2.

(I'm definitely going to consider writing some tutorials on some of these features of games development)

KISTech
18
Years of Service
User Offline
Joined: 8th Feb 2008
Location: Aloha, Oregon
Posted: 13th Mar 2010 18:36
Didn't someone start a Wiki for DBPro? Did that die off?

This is a great idea, and a lot of work. I certainly commend your efforts taking on such a daunting task.

One thing I'd like to see included is what the Default values are in commands that have optional parameters.

For example, LOAD IMAGE

Quote: "
From the current docs
Texture Flag

Integer
A zero will treat the image as a texture and one will preserve pixel perfect quality, two will load as a cubemap texture and three as a volume
"


There's no mention anywhere what the default value of the texture flag is. You can assume 0, but in some other cases that might not be right.

Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 13th Mar 2010 18:47 Edited at: 13th Mar 2010 22:15
Quote: "I'm definitely going to consider writing some tutorials on some of these features of games development"


If you can do that it would be great. All of your ideas are exactly the kind of articles that would be perfect for this.

Quote: "There's no mention anywhere what the default value of the texture flag is. You can assume 0, but in some other cases that might not be right."


These will be listed in the documentation where applicable. And also so longer as I remember to point them out. For any optional parameter that does not appear in the documentation its default value can be found it the appropriate header file.

Quote: "Didn't someone start a Wiki for DBPro? Did that die off?"


I can remember at least three instances where someone put up a wiki. None of the ones I could find still exist.

DBP is a great engine but it's painful to show it to someone because inevitably they'll want to see the documentation. It's about time something was done about this.

Amnzero
16
Years of Service
User Offline
Joined: 1st Aug 2009
Location:
Posted: 14th Mar 2010 06:25
Im not exactly a Basic coder. If I write code examples it would definately be in C++ cause I don't know the first thing about the Basic syntax. Also because of the use of external libraries, it would be difficult to translate some things to DarkBasic. Would you consider including samples in multiple languages?

MSDN (MicroSoft Developer Network) includes samples from VisualBasic, C#, C++, and even sometimes J# in all of their documentation. I think that it would be an excellent way to make the documents universal accross the languages. Maybe everyone could even start distributing this version of the docs with all of the builds. DBP, DGDK, DGDK.NET, PGDK

[url="http://neovance.com/"][/url]
Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 14th Mar 2010 10:59
I'm only looking for things that I can include in the documentation that don't rely on any external dependencies. The resources included should compile without the need to download anything more.

Amnzero
16
Years of Service
User Offline
Joined: 1st Aug 2009
Location:
Posted: 19th Mar 2010 06:52
Right. Like the c++ standard and windows libraries... Rarely are you going to find a GDK program which has used the GDK exclusively.

[url="http://neovance.com/"][/url]
Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 19th Mar 2010 10:18 Edited at: 19th Mar 2010 10:29
STL is ok because it's part of the C++ standard and not considered a dependency (post 1998 compilers).

The Win32 SDK is ok but I wanted to experiment with using GLUT (or a GLUT clone) as the windowing manager for the C++ port because it's extremely small and doesn't require downloading hundreds of megabytes to open a window.

Unlike DarkGDK, PureGDK doesn't provide any window facilities. You have to specify a window handle for it to be drawn to. The handle can be derived from any API you want like WTL or GTK+ so long as it returns a valid Win32 window handle.

Hawkblood
16
Years of Service
User Offline
Joined: 5th Dec 2009
Location:
Posted: 19th Mar 2010 15:19
So is this post for documentation improvements only? Would suggestions for future functionallity be approriate here?

The fastest code is the code never written.
Mistrel
Retired Moderator
20
Years of Service
User Offline
Joined: 9th Nov 2005
Location:
Posted: 19th Mar 2010 19:06
Unless you're referring to functionality of the documentation, then no, this isn't the right place.

BMacZero
20
Years of Service
User Offline
Joined: 30th Dec 2005
Location: E:/ NA / USA
Posted: 13th Apr 2010 02:25
There actually is an official wiki:
http://wiki.thegamecreators.com/Main_Page

I've been working heavily on it lately with the intent to get some "better documentation" going. Possibly some collaboration can be done here?

Login to post a reply

Server time is: 2026-07-26 12:32:54
Your offset time is: 2026-07-26 12:32:54