Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Smart people ~ Great Scripts
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Hello tS'lers - i present here my actual project.

I'm working on the conversion of the tS 6.6 SDK from C++ to FreeBasic. That means, you can now develop your tS PlugIns within a Basic Dialect nearly to the good old QBasic - or any other Basic Language.

Why FreeBasic?

- As the name say: FreeBasic is free - it is a open source project
- The Language is easy to understand (to learn) but powerfull enough to work with
- FreeBasic creates fast and small code without any runtime librarys
- There are a lot of librarys which can be used with FreeBasic (i.e. DataBase, Graphic Libs etc.)
- A really good help is available as documentation (in english and also german) and also a good comunity in both languages
- And at last point: i don't like C++ ;)

So, what have i done so far?

- I converted the C++ header files into the FreeBasic language (still in progress).
- I figured out the problems with using resources in the dll. That means: you can easly create your PlugIn Window per Drag 'n Drop in the FormEditor of the FreeBasic IDE (i use FBEdit as example) and start with coding.
- I wrote my first PlugIn to test the possibility if i get this to work (still in progress - see attached image)

CONLUSION:
If you are interested by this project and writing your own tS PlugIns - maybe you have experience in C++ OR any Basic language - feel free to help me.
Attachments
wheely_01.jpg
fb.jpg
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
froo
Captain
Posts: 2554
Joined: 22 May 2009, 12:13

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by froo »

Hi DesignDevil. It's good to see this. Keep it up! :)
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

So, i'm finshed.

I have written a tutorial about using the FreeBasic conversion of the trueSpace SDK and i made a package which inludes:

- The original SDK
- A sample TSX (Wheely)
- A Tutorial about installing and using the FreeBasic conversion, using the sample TSX and writing your own TSX in FreeBasic

you get the package on my website (SDK + STUFF): http://www.designdevil.de

Questions, Tips - give it to me ;)
Last edited by DesignDevil on 16 May 2010, 21:41, edited 1 time in total.
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Oooooh ! This looks VERY interesting.

You deserve a huge thank you for this awesome work :superbanana: :superbanana: :superbanana:
I have plenty of plugins ideas in mind but a very little knowledge of C++... so this could be the chance to make my dreams come true !

At the moment I am rather busy but I promise I will be back soon on this thread !
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Thanks a lot.

Well, it is not finished yet. From time to time i find a issue in some of the functions. But, hey, it is the v1.0 ;)

For now i try to translate all original sample plugins into FreeBasic to get more experience and to give more samples.

FreeBasic himself is not the easiest basic language but this is founded in the "role" that his has to play as a "up to date compiler".

It's not so easy to learn as to the QBasic time. But if you have a bit experience in VisualBasic, PureBasic or or another language, then you can find here a good language to work with.

The reason for all that is, that i self have a lot of ideas in mind for plugins. And this although i have a big collection on my website. Also i write computer programs since 20 years now, but C++ was ever to difficult to me. I don't no why because i can write in many Basic dialects, php, delphi. Also JavaScript (a bit) ... but C++ doesn't go into my head ;)
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Hi folks ... the version 2.0 is UP ;)

I have rewritten the complete code as i detected that the created code by the SWIG converter was terrible wrong.

I rewrote every line of code so that we now don't have to assign every variable as a pointer - which is a lot easier to write and, more importend, to understand.

I rewrote also the tutorial and translated more samples from the original SDK into FreeBasic.

Be aware of the following: The "viewcam" sample doesn't work correctly. But also the original does that not. But my FreeBasic version does the same failure so i'm sure i translated the code correctly ;)

If anyone has a idea how i could fix that contact me - it would be cool to get this to work.

Download on my website .

And now: let's write some cool plugins.
Last edited by DesignDevil on 16 May 2010, 21:42, edited 1 time in total.
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
First Light
Senior Chief Petty Officer
Posts: 169
Joined: 22 May 2009, 11:17
Type the number ten into the box: 0
Location: Michigan, U.S.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by First Light »

Thanks, DesignDevil. I hope to try something similar for the Workspace Side of tS 7.61 in the future.
froo
Captain
Posts: 2554
Joined: 22 May 2009, 12:13

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by froo »

Hi DesignDevil.
You might want to create a thread for the FreeBasic" TS 6.6 SDK at http://www.truespaceplugins.com" as well:


http://truespaceplugins.com/forum.html"

Froo
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Sound like a good idea - thx froo.

btw - FREEbasic not REALbasic ;)
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
froo
Captain
Posts: 2554
Joined: 22 May 2009, 12:13

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by froo »

Doh sorry about that. Coffee was not yet brewed. That's what I get for thinking before caffeine...

I fixed it. Thanks.

Froo
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

hahaha ... i know exactly what you mean ...

i have a byword for this (in german) ...

"Fehlender Kaffee, Anwender angehalten"

"missing coffee, user paused" (i hope it is correct translated)
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
froo
Captain
Posts: 2554
Joined: 22 May 2009, 12:13

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by froo »

heheheh :)
My wife speaks German; she'll get a kick out of that one!
frank
Senior Chief Petty Officer
Posts: 161
Joined: 28 May 2009, 13:25

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by frank »

Wow... I just keep getting more and more surprises from this forum!!!

DesignDevil... this is similar to something I worked on a while back. I wanted to write plugins in Visual Basic but quickly found out you couldn't export the functions since they aren't CDECL.

I actually went the route of purchasing PowerBASIC, which natively supports this. (Even wrote an object swapping program for facial animation.)

...however, PowerBASIC isn't quite as easy as Visual Basic (which I've used for years). Any way we can get this to work with Visual Basic 6?
EDIT: PowerBASIC isn't as easy in terms of the interface.

Man... this is exciting. I have LOTS of reading to do...
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

I'm sure it is possible for every language which can create DLL's with CDECL function specification.

The problem is "just" to convert the header files with all structures and function calls. They are sometimes a bit wild.

I have used 2 ways. The first thing was to use the header files from the 4.1 Delphi version of the SDK and also the previous created basic version from a FreeBasic User (this was for the 3.x SDK).

I'm sure there are a lot's of issues in my conversion but it is impossible to proof all these functions if they are correct or not. So far it works very well and anytime i found a mistake i correct it and update the package.

I himself don't use Visual Basic and in the moment i have to many things to do and no time for developing plugins. I'm also a bit angry about the very bad written SDK for TS 6.6 and that a lot of functionality is not available or works wrong thrue the SDK (which is very bad). As example: there is no way to find out which tool the user has choosed actualy (i.e. moving, scaling, rotating). Another example: Changing the viewport thrue the SDK functions creates issues with the cage - and manipulation widget.

...and there are a lot more...

So, if you need any help i will do my very best to help you - contact me - i'm always interested to anybody who has the interest to write plugins for tS6.6 (or modeler).
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
BNG
Chief Warrant Officer
Posts: 684
Joined: 16 Oct 2009, 03:26
Type the number ten into the box: 0
Location: Texas

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by BNG »

Thank you very much. I see you've spent a lot of time converting files for FreeBasic. I'm new to writing TSX plugins but would like learn more about making plugins. Thanks again for taking the time to do as much work as you have already. I apreciate it very much.
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

I am giving a first try at building a TSX with DD's FreeBasic tutorial and want to share my experience with you all.

I download DD's package from his website, the FreeBasic compiler and the IDE to write/edit the source code.
The editor is cool. I think building plugins with this toolset should be easier than using C++ and Microsoft Visual Studio.
editor.jpg

Next, I follow each step of DD's tutorial and all runs fine until I reach the page 5 of the FreeBasic SDK.pdf and hit the F5 key to compile the template tsx : wheely
Here, I get a first error message :

wheely.bas(44) error 24: File not found, "..\tsxapi\tsx.bi" in '#Include Once "..\tsxapi\tsx.bi"'

Okay, I copy the tsxapi folder to the root of FreeBasic folder like below :
location of tsx api.jpg
Now, I press F5 again.
The file not found error for tsxapi is gone, but I get an other file not found error, this time looking for a windows.bi file :

Build error(s)
C:\Program Files (x86)\FreeBASIC\fbc -w 3 -s gui -dll -export "wheely.bas" "wheely.rc"
C:\Program Files (x86)\FreeBASIC\tsxapi\tsxMisc.bi(13) error 24: File not found, "windows.bi" in '#Include Once "windows.bi"'


Problem : there is no windows.bi file in the FreeBasic installation nor in DD's package.

Any idea, someone ?
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Okay, I found that the zipped version of FreeBasic Compiler contains the additional files.
The one we should download and unzip is at : http://sourceforge.net/projects/fbc/fil ... p/download
In other words, don't download the Windows 0.23.0 Installer

Now, the editor returns a Make done message :)

I can start my experiments ....
froo
Captain
Posts: 2554
Joined: 22 May 2009, 12:13

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by froo »

Excellent Emmanuel! :bananacheers:
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Stan made a plugin that allows to measure distance between two objects, but I think there is no tsx yet to measure the distance between two points (vertex). This could be a good challenge for a first plugin using FreeBasic.

Please note that I don't know FreeBasic at all and that I have a very little experience in programming.
So this project should be a good tutorial for all non-programmers.

First, the concept :
User picks up a vertex in point edition mode, then clic a button on the tsx panel to store the first vertex location. Next, pick up an other vertex on the same object or an other one, then clic a button on tsx panel to store the second vertex location.
A third button would return the distance and display it in a field.
An additional feature would be to draw a line showing the distance. This line would disapear on exit.

Now, the design :
measure tsx project.jpg
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Now, I am reading the tsxAPI66 pdf file that comes with the tS6.6/Modeler SDK.

In this file I do a search for the words "ccordinates" and "vertex". I find a command that could to the trick :

tsxDistanceToPoint3f

PURPOSE
Distance between 2 points ‘p’, ‘q’.

SYNTAX
TSXAPIFN float tsxDistanceToPoint3f(const CtsxVector3f& p,const
CtsxVector3f& q)

PARAMETERS
p const CtsxVector3f&: the coordinates of a 3-D point
q const CtsxVector3f&: the coordinates of a 3-D point

RETURNS
float


Since I have to get the point p and q coordinates, I also grab this one :

tsxGNodeGetAxesPosition

PURPOSE
Get the GNode’s position in World coordinates.

SYNTAX
TSXAPIFN CtsxVector3f* tsxGNodeGetAxesPosition(tsxGNODE* pGNode,
CtsxVector3f* posn)

PARAMETERS
pGNode tsxGNODE*: a pointer to a GNode
posn CtsxVector3f*: a pointer to a 3-vector

RETURNS
CtsxVector3f*: 0 if not GNODE, else posn.



I guess tsxGNodeGetAxesPosition will be used to store the location of my two points, assign the locations to two variables (p and q), and tsxDistanceToPoint3f will provide us with the distance between the two points.
Now I have to figure how to put all this together :) ...
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Back into FbEdit, the FreeBasic editor, I think I will try to build my tsx using DD's wheely as template.

I open wheely.rc file.

In the central column of the user interface, I see a tree with two folders : Dialog and Misc.
A double clic on IDD_DLG1 in the Dialog folder opens the visual editor of the plugin panel. Here, I can edit the panel according to my project's design.

Next, I clic on "Ressource files". I can see that this stores the plugin icon. I draw an icon in Photoshop, save it in BMP format, create a folder to store it and all future files of this plugin, and replace the bicycle icon with my new one.

In "Stringtable", I find the plugin name. Here again, I modify it and type my plugin name : Distance 1.0

Finally, I clic in the menu File>Save_As, and name my file Distance.rc
FbEdit modif rc.jpg
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

tsxGNodeGetAxesPosition: Get the GNode’s position in World coordinates.

That means you can find out the position of your object in the world or - more exactly - it gives you the position of the origin axes of this object in the world!
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

DesignDevil wrote:tsxGNodeGetAxesPosition: Get the GNode’s position in World coordinates.

That means you can find out the position of your object in the world or - more exactly - it gives you the position of the origin axes of this object in the world!
Hello DD, and thanks for the input.
Do you mean that this command may not give the position of a selected vertex ?
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Yep, correct.

The problem (or solution) is to know how the points (vertecies) are arranged to create a object in tS.

First: You have a object, maybe a cube.This Object is a GNode Type, which means it is a named pointer, to get access to it. The object contains a list (array) of faces - for our cube example a array of 6 indizes (0-5 = 6 sides). Every face has a Vertex list added (also a array) where the vertecies are stored. All these lists are just simple numbers so as if you would give every thing in the world a number.

Example: object -> 0 -> face -> 0 -> vertex -> 0,1,2,3 | face -> 1 -> vertex -> 5,6,7,8 ...and so on.

If you are in point edit mode and a vertex is selected than you have a few things to do. First you have to be sure that only ONE and only a vertex is selected (not a edge, face etc.) At next you have to find out which one and i can not remember that there is a function for it?!? Maybe i'm wrong but i think you have to go this way:

You setup a CallBack to be informed about a selection in Point Edit Mode. I'm not really sure but i think every time this callback is called you get a GNode (which object is selected) and (i think) a list of the selected vertecies, edges and/or faces.

Now you can program your rules (just one vertex can be selected etc...what ever)

Further going: you have now to transform the vertex coordinates of your selected points into world coordinates by applying the world transformation matrix from the GNode object. You also have to do this for the other vertex. The result should be 2 points in the 3d world (or 2 vectors) and now you can calculate what ever you want.

Remember that the vertex points are just positions relative to the GNode Axis (or the origin of the object). Back to our example. The cube has a origin (his axis). These axis are anywhere in 3D Space. Relative to these axis (normaly the axis are in the center of the object) are the vertex points which builds edges and the edges builds faces ... etc.

If we say that the cube ist 1,1,1 in size, then the first vertex could be at position 0.5, 0.5, 0.5 - the oposite vertex must be -0.5, -0.5, -0.5

...i hope that this helps a little bit and i'm proud that anyone use my tutorial and my sdk translation. :) Feel free all the time to ask any question that you have.
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
User avatar
Emmanuel
Chief Warrant Officer
Posts: 670
Joined: 14 Jun 2009, 06:47

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Emmanuel »

Ouch! This seems more difficult than what I thought :?

In the SDK I can see an other command called tsxAViewPickVertex. Perhaps this one would allow to pick up the point directly rather than through an object...
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

Yes (and no) ... this is more something like a collision check between the mouse position and the nearest vertex under the mouse. But it is a good example for my description. The returned parameter by this function are:

ppPolyh - Polyhedron whose vertex was picked
pVxIndex - index of picked vertexin pPolyh

ppPolyh means that this is a pointer to a pPolyh object which means it is a GNode object and his type is Polyhedron (this is for example a nurbs object can not have a vertex)

The trueSpace sdk is really bad written (in my eyes and i have a lot of experience in programming). To learn the internals of the structure of tS is very difficult. Well, there are a lot of informations in the sdk documentation but you have to read it very, very, very, very, very carefully - really...

As a tip (i startet with this): look at the example codes (no matter if they are in C++) and try to understand what and why they do what they do.

btw, i have icq and skype if you need more detailed help.
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
stan
Master Chief Petty Officer
Posts: 584
Joined: 21 May 2009, 17:20

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by stan »

Emmanuel, use : tsxPointsGetAxesPosition (&locp); to get position of selection
this to move in one direction: tsxPointsTranslate (&loct, e_tsxWorldFrame);

actually I have been working on that improvement you asked for, some of it anyway..will send it to you when its ready..
User avatar
DesignDevil
Master Chief Petty Officer
Posts: 500
Joined: 22 May 2009, 08:52
Type the number ten into the box: 0
Location: Neuruppin, Germany, Earth.

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by DesignDevil »

@stan - this is great and also a good example that the sdk is bad written. I never knew this function until now - this is much, much more easier - fantastic.
I still use TrueSpace 6.6
Link: My Youtube Channel
Link: www.DesignDevil.de - Plugins, Tutorials and more about TrueSpace 6.6
stan
Master Chief Petty Officer
Posts: 584
Joined: 21 May 2009, 17:20

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by stan »

DD, it's part of tsxPointEdit.h

they will get the axis of any selection or translale it.
User avatar
bitkar
Captain
Posts: 2089
Joined: 16 Mar 2010, 07:14
Type the number ten into the box: 0
Location: Czech Republic

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by bitkar »

good to know that there is some modeler development going on! keep it up guys, good luck!
Michal aka bitkar
tS freak since tS2 (1998) and forever (tS7.61 modeler)
User avatar
Cellulo
Lieutenant
Posts: 927
Joined: 27 Sep 2012, 07:48
Type the number ten into the box: 9
Location: France

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Cellulo »

I know it's old topic, but i want to try to compile the wheely example source code with the last Freebasic 1.0.5.0 version but all time i fail to compil the code, i follow the pdf tutorial, but some steps it's not clear for me. here the steps order.

1) I install freebasic at c:\

2) i install fbedit IDE in freebasic at "c:\freebasic\fbedit"

3) i put all examples files folder TSX Wheely, TSX ViewCam etc.. in "c:\freebasic"

4) i put "tsxapi" folder in "c:\freebasic"

5) Now i launch FBedit, i open "Wheely.bas" file, i make the Compil TSX setting in build option.

6) i launch the compil and i get this error message:

Build error(s)
c:\FreeBASIC\fbc -w 3 -s gui -dll -export "wheely.bas" "wheely.rc"
C:\FreeBASIC\tsxapi\tsxMouse.bi(88) error 14: Expected identifier, found 'Pointer' in 'Type tsxMousetool As Pointer'
C:\FreeBASIC\tsxapi\tsxExtOb.bi(22) error 14: Expected identifier, found 'Pointer' in 'Type tsxFile As Pointer'

What's wrong here ? and where is "windows.bi" file ? i don't find it , sorry i'm noob in programming, maybe i make a bad step in the processus.

i want make this test to see if there is no trouble with freebasic 1.0.5.0, maybe i need to try with freebasic 0.20.0b from the tutorial pdf file.

EDIT: i found windows.bi file, it autodetect when i compil.
User avatar
Cellulo
Lieutenant
Posts: 927
Joined: 27 Sep 2012, 07:48
Type the number ten into the box: 9
Location: France

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Cellulo »

Well, i found my problem the last freebasic version is not suitable for compil the example freebasic plugin file from the freebasic SDK, i continu to test other version of freebasic to see when the problem come, this mean that the code in freebasic has changed after a certain version.
User avatar
Cellulo
Lieutenant
Posts: 927
Joined: 27 Sep 2012, 07:48
Type the number ten into the box: 9
Location: France

Re: Developing tS 6.6 (Modeler) PlugIns in a Basic Language

Post by Cellulo »

I have made more test with different version of freebasic to have a working wheely plugin dll file compiled, here the result:


Freebasic 1.0.4 and 1.0.5 : NO, problem in the code with pointer, no files generated due to the error.

Freebasic 1.00, 1.01, 1.02.1 and 1.03 : OK but no more obj file generated but the dll plugin file is created with 10 octet in addition instead of 15 ko final size plugin file.

Freebasic 0.24.0 : OK, but no more obj file generated but the dll plugin file is created with 1 octet in addition instead of 15 ko final size plugin file.

Freebasic 0.23.0 : OK, all is good with this freebasic version, all three files are generated.

The best is to use the freebasic 0.23.0 to compil plugin made in basic because the dll file is light in size and three files are generated when compiled as the freebasic SDK tutorial pdf file say made by DesignDevil.

Freebasic 0.23.0

i have question the obj file generated is needed or not ?

Return to “Scripts and SDK”