PDA

View Full Version : ClanLib 4.0 Update



rombust
01-12-2015, 07:53 PM
This is for new users or users who are not familiar with the current work that is ongoing in the Development ClanLib ( https://github.com/sphair/ClanLib )

ClanLib 4.0 aim is to become a slim portable game SDK using the latest programming techniques.

With the release of C++#11 Standard Library, many of our existing classes were made obsolete. These classes have now been removed (with the exception of a couple, that are not yet fully supported by modern compilers).

We have also removed the Physics engines and Database Library out of ClanLib. They were just basically a wrapper to another library.

The added benefit to this change is that ClanLib should become even easier to port to other platforms, if somebody desires to do so.

Once everyone is happy that all the examples and tests are working to how they should, we will be ready for a release.

Please don't report "Examples/Blah doesn't compile" or "Class:func_to_amazing_stuff()" core dumps! Instead, ask on IRC and attempt to fix it yourself. ( #clanlib on irc.freenode.net ) (See http://www.clanlib.org/development.html )

At the time of writing this, all examples that use ClanGUI have not yet been converted to use clanUI. This should be a simple task, however time consuming.

rombust
03-02-2015, 03:06 PM
The clanApp module has been rewritten.

This was required to assist in porting ClanLib to mobile platforms.

As before, you do not have to use clanApp, if it does not quite meet specialised needs.

At the time of writing this, only the Basic2D example has been adjusted.

rombust
03-03-2015, 10:37 PM
A further update to clarify some things, to assist silent users of ClanLib.

The ClanLib 4.0 API has now stabilized.

Talking with others on IRC, I understand this is the next plan in the immediate future:

Get the majority of the examples compiling again (required due the recent clanApp modification)
Remove the obsolete documentation pages (in ClanLib/Documentation)
Modify ClanLib/Documentation/index.html ( http://clanlib.org/ index page ). Removing news. Including a scope statement, making clear what ClanLib aims are.
Remove: http://clanlib.org/download.html . It is trivial to compile ClanLib libraries. There is no benefit in providing precompiled libraries. The documentation clearly explains how to build ClanLib. However, we still want to keep a link to http://clanlib.org/download somewhere. (After tidying that folder)
Only have the latest GIT docs in http://clanlib.org/documentation.html
Only list the latest GIT in http://clanlib.org/development.html (Keeping IRC info)
Remove http://clanlib.org/examples.html - This is only eye candy. This page does not assist the programmer wanting to use ClanLib. It's not required.
Remove http://clanlib.org/donations.html - Although a nice idea. It encourages programmers to "pay" somebody else to update ClanLib. Except there is no "somebody else". All current developers only code what they want to code, as a hobby.
Remove http://clanlib.org/contributions.html - Not required on the web site. It could be a "useful links" somewhere in the documentation pages, if somebody desires it.
Remove Forum - The forum should be used to ask questions. However, it is rarely used for that. It mostly contains posts "please add this" or "this does not work". This discourages programmers from fixing the problem themselves. Discussions can be made on IRC or GitHub.
Stop providing "releases". If someone wants to create a stable branch (static API and only bug fixes), they can easily fork. It is impossible to determine when to make a "release". If anything it hinders development.


Some of this is my view, some are views of others. This is not the "official" plan, as nobody 'owns' ClanLib. Thus it is subject to change depending on other developers.

ArtHome
03-05-2015, 07:36 AM
The moment we've been waiting for finally come true! :)



Remove Forum - The forum should be used to ask questions. However, it is rarely used for that. It mostly contains posts "please add this" or "this does not work". This discourages programmers from fixing the problem themselves. Discussions can be made on IRC or GitHub.


IMHO confused cause and effect.

No questions in forum due to insufficient popularity. But the forum is one of the way to popularization. Just the time has not come yet.

Secondly, peoples like me with poor English cannot communicate fast. And chats not so good for me.

If this forum does not requires costs, let it remains please )

In my own plans writing a textbook around examples. At first in Russian then may be in English. So long as I am noob I see information gaps. Way to understand source code is more efficient with hints in human language.

First article https://github.com/ArtHome12/ClanLib/wiki/HelloWorld_Russian
Of course, my texts will be free and copyleft.

Does GitHub have support of multilingual wiki?

rombust
03-05-2015, 09:52 PM
The forum is maintained by rtsoft through their generosity.

Personally, I don't mind the forum staying.

But I don't know how to stop the "please fix this", "please add that" style messages. (They are annoying to developers!)

We love "I suggest this... I will look at adding it, if it sounds cool" style messages.

- - - Updated - - -


First article https://github.com/ArtHome12/ClanLib/wiki/HelloWorld_Russian

Does GitHub have support of multilingual wiki?


That is excellent!

I don't know if github supports multilingual wiki.

rombust
03-27-2015, 11:06 AM
ArtHome - The wiki is now linked on http://clanlib.org/documentation.html (You may need to F5 refresh)

ArtHome
03-30-2015, 01:59 AM
ArtHome - The wiki is now linked on http://clanlib.org/documentation.html (You may need to F5 refresh)

Tnx, will continue with renewed vigor)

aleksandrkr
04-02-2015, 02:25 PM
clan::Application app(&Program::main); данная инмтрукция сейчас не работает;
как теперь указуется начальная функция или все идет с конструктора.

Я так понимаю релизов больше не бедет

rombust
04-02-2015, 09:17 PM
clan::Application app(&Program::main); данная инмтрукция сейчас не работает;
как теперь указуется начальная функция или все идет с конструктора.

Я так понимаю релизов больше не бедет

Sorry,

The documentation in English is out of date, and requires fixing. There was a recent breaking change to allow porting to mobile platforms. (This was mentioned earlier in this thread)

We probably need to look at the existing documention and update it.

aleksandrkr
04-02-2015, 10:26 PM
Sorry,

The documentation in English is out of date, and requires fixing. There was a recent breaking change to allow porting to mobile platforms. (This was mentioned earlier in this thread)

We probably need to look at the existing documention and update it.

downloaded version 3.0.0 from GitHub with amendments for VS2013
writes that the class is not definition
Draw:: line(canvas, 0, 110, 640, 110, Colorf::yellow); //Error
canvas.draw_line( 0, 110, 640, 110, Colorf::yellow);

canvas.h
/// \addtogroup clanDisplay_Display clanDisplay Display
/// \{

class Canvas_Impl;
class GraphicContext;
class PrimitivesArray;
class Sprite_Impl;
class Image;
class GlyphCache;
class Draw; //Error
class RenderBatcher;
class Colorf;
class Pointf;
class Gradient;
class LineSegment2f;
class LineSegment2;
class Trianglef;
class Triangle;
class DisplayWindow;
class DisplayWindowDescription;

sorry for bad English:whistling: