| Thread overview | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
August 18, 2006 FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date). They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ). Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever). - Gregor Richards | ||||
August 19, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Gregor Richards | Gregor Richards wrote:
> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D
No competition at all. In fact, I think that this is really wonderful. Thanks for the work and using FLTK with D already.
Matthias
| |||
August 19, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Gregor Richards | Hi!
I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
Gregor Richards kirjoitti:
> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>
> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>
> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>
> - Gregor Richards
| |||
August 19, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to unknown | I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :(
- Gregor Richards
unknown wrote:
> Hi!
>
> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
>
> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
>
> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
>
>
>
> Gregor Richards kirjoitti:
>
>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>>
>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>>
>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>>
>> - Gregor Richards
| |||
August 20, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Gregor Richards | Hi!
I try to work on Irrlicht..
So I got all files generated, except one not important I could exclude (propably much more files could be excluded)
But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now:
./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d
Get output:
vector2d
In file included from <command line>:88:
bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
vector3d
In file included from <command line>:88:
bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
template_d.h:
#include "../bind.h"
#include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h"
vector3d<DReflectedClass> __IGNORE_vector3d;
vector2d<DReflectedClass> __IGNORE_vector2d;
Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced..
maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there..
typedef vector3d<f32> vector3df;
typedef vector3d<s32> vector3di;
Thanks.
Gregor Richards kirjoitti:
> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :(
>
> - Gregor Richards
>
>
> unknown wrote:
>> Hi!
>>
>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
>>
>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
>>
>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
>>
>>
>>
>> Gregor Richards kirjoitti:
>>
>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>>>
>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>>>
>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>>>
>>> - Gregor Richards
| |||
August 21, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to unknown | Oh, I recognize that template_d.h is temporare file only? For this error: bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type. Maybe this is the problem: vector code is in namespace irr::core, so should I use cmd option -Tirr::core::vector3d for it to recognize it as a defined type? But if I use that then template_D.h will have line irr::core::vector3d<DReflectedClass> __IGNORE_irr::core::vector3d; which is of course illegal. Also I see it generates full of C++ template code in D files, like from ISceneNode.d: vector3d<float> getScale() { void *cret = _BCD__ZNK3irr5scene10ISceneNode8getScaleEv(__C_data); vector3d<float> dret = new vector3d<float>(cast(ireal) 0); dret.__C_data = cret; return dret; } But that's of courde without -Tvector3d option.. Could you work on this, is it known bug, or my mistake??? There is no examples that use templates.. do you have one? Thanks unknown kirjoitti: > Hi! > > I try to work on Irrlicht.. > > So I got all files generated, except one not important I could exclude (propably much more files could be excluded) > > But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now: > ./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d > > Get output: > vector2d > In file included from <command line>:88: > bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type. > bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type. > vector3d > In file included from <command line>:88: > bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type. > bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type. > > > template_d.h: > #include "../bind.h" > #include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h" > vector3d<DReflectedClass> __IGNORE_vector3d; > vector2d<DReflectedClass> __IGNORE_vector2d; > > Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced.. > > maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there.. > typedef vector3d<f32> vector3df; > typedef vector3d<s32> vector3di; > > Thanks. > > Gregor Richards kirjoitti: >> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :( >> >> - Gregor Richards >> >> >> unknown wrote: >>> Hi! >>> >>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work. >>> >>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary. >>> >>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try. >>> >>> >>> >>> Gregor Richards kirjoitti: >>> >>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date). >>>> >>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ). >>>> >>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever). >>>> >>>> - Gregor Richards | |||
August 21, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to unknown | Ok, so I removed templates out from irrlicht, not too many was there... Now, compiling all the cc files, maybe this is a bug. For example aabbox3d.cc g++ -c bcd/irrlicht/aabbox3d.cc -o bcd/irrlicht/aabbox3d.cc.o bcd/irrlicht/aabbox3d.cc:81: error: ‘core’ has not been declared bcd/irrlicht/aabbox3d.cc:81: error: use of enum EIntersectionRelation3D’ without previous declaration The line in aabbox3d.cc is: enum core::EIntersectionRelation3D _BCD__ZNK3irr4core9aabbox3df21classifyPlaneRelationERKNS0_8plane3dfE(irr::core::aabbox3df *This, irr::core::plane3df const & plane) { return (This->classifyPlaneRelation(plane)); } enum EIntersectionRelation3D is from plane3d.h: namespace irr { namespace core { //! Enumeration for intersection relations of 3d objects enum EIntersectionRelation3D { ISREL3D_FRONT = 0, ISREL3D_BACK, ISREL3D_PLANAR, ISREL3D_SPANNING, ISREL3D_CLIPPED }; ... So the problem is I think that bcdgen should write all namespaces, irr::core:: instead of core:: BELOW enum irr::core::EIntersectionRelation3D _BCD__ZNK3irr4core9aabbox3df21classifyPlaneRelationERKNS0_8plane3dfE(irr::core::aabbox3df *This, irr::core::plane3df const & plane) { return (This->classifyPlaneRelation(plane)); } I can fix them manually then it compiles, but maybe this is simple bug to fix? Thanks unknown kirjoitti: > Hi! > > I try to work on Irrlicht.. > > So I got all files generated, except one not important I could exclude (propably much more files could be excluded) > > But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now: > ./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d > > Get output: > vector2d > In file included from <command line>:88: > bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type. > bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type. > vector3d > In file included from <command line>:88: > bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type. > bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type. > > > template_d.h: > #include "../bind.h" > #include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h" > vector3d<DReflectedClass> __IGNORE_vector3d; > vector2d<DReflectedClass> __IGNORE_vector2d; > > Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced.. > > maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there.. > typedef vector3d<f32> vector3df; > typedef vector3d<s32> vector3di; > > Thanks. > > Gregor Richards kirjoitti: >> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :( >> >> - Gregor Richards >> >> >> unknown wrote: >>> Hi! >>> >>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work. >>> >>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary. >>> >>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try. >>> >>> >>> >>> Gregor Richards kirjoitti: >>> >>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date). >>>> >>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ). >>>> >>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever). >>>> >>>> - Gregor Richards | |||
August 21, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to unknown | Sorry I haven't responded yet, I've been busy with other projects. I'll try to help out ASAP.
- Gregor Richards
unknown wrote:
> Hi!
>
> I try to work on Irrlicht..
>
> So I got all files generated, except one not important I could exclude (propably much more files could be excluded)
>
> But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now:
> ./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d
>
> Get output:
> vector2d
> In file included from <command line>:88:
> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
> vector3d
> In file included from <command line>:88:
> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
>
>
> template_d.h:
> #include "../bind.h"
> #include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h"
> vector3d<DReflectedClass> __IGNORE_vector3d;
> vector2d<DReflectedClass> __IGNORE_vector2d;
>
> Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced..
>
> maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there..
> typedef vector3d<f32> vector3df;
> typedef vector3d<s32> vector3di;
>
> Thanks.
>
> Gregor Richards kirjoitti:
>
>> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :(
>>
>> - Gregor Richards
>>
>>
>> unknown wrote:
>>
>>> Hi!
>>>
>>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
>>>
>>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
>>>
>>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
>>>
>>>
>>>
>>> Gregor Richards kirjoitti:
>>>
>>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>>>>
>>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>>>>
>>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>>>>
>>>> - Gregor Richards
| |||
August 22, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Gregor Richards | Hi,
no pressure..
do you have solution for anonymous union/structs? Can't use -N option to just for now ignore, because they are anonyous, or can I?
For example in SMaterial.h:
union {
struct {
ITexture* Texture1;
ITexture* Texture2;
ITexture* Texture3;
ITexture* Texture4;
};
ITexture* Textures[MATERIAL_MAX_TEXTURES];
};
Problem is that it generates illagel code in SMaterial.cc and SMaterial.d, like:
void set_Texture1(ITexture * x) {
_BCD_set__ZN3irr5video9SMaterial4._104._118Texture1E(__C_data, x);
}
There are lot of things irrlicht brings surface, that I think are quite common and not impossible to solve.
Thanks
Gregor Richards kirjoitti:
> Sorry I haven't responded yet, I've been busy with other projects. I'll try to help out ASAP.
>
> - Gregor Richards
>
>
> unknown wrote:
>> Hi!
>>
>> I try to work on Irrlicht..
>>
>> So I got all files generated, except one not important I could exclude (propably much more files could be excluded)
>>
>> But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now:
>> ./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d
>>
>> Get output:
>> vector2d
>> In file included from <command line>:88:
>> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
>> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
>> vector3d
>> In file included from <command line>:88:
>> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
>> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
>>
>>
>> template_d.h:
>> #include "../bind.h"
>> #include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h"
>> vector3d<DReflectedClass> __IGNORE_vector3d;
>> vector2d<DReflectedClass> __IGNORE_vector2d;
>>
>> Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced..
>>
>> maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there..
>> typedef vector3d<f32> vector3df;
>> typedef vector3d<s32> vector3di;
>>
>> Thanks.
>>
>> Gregor Richards kirjoitti:
>>
>>> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :(
>>>
>>> - Gregor Richards
>>>
>>>
>>> unknown wrote:
>>>
>>>> Hi!
>>>>
>>>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
>>>>
>>>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
>>>>
>>>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
>>>>
>>>>
>>>>
>>>> Gregor Richards kirjoitti:
>>>>
>>>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>>>>>
>>>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>>>>>
>>>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>>>>>
>>>>> - Gregor Richards
| |||
August 23, 2006 Re: FLTK2 bindings for D | ||||
|---|---|---|---|---|
| ||||
Posted in reply to unknown | All problems solved / go around so far.
- removed some templates (vector3d<T> => vector3df, vector3di, etc.)
- added CXXFLAGS="-D __BCD_GEN__" to ignore problematic code (for example inner structs/unions (not only anonymous as I first said) and some templates )
- made script that searches and replaces some code after generation (for example namespaves ./replace_in_file ${i} " core::" " irr::core::")
I try to automate as much as possible.
Now I got it compiled and next try example app. See how/if/what works and what not and what can be done.
Sorry, I have polluted wrong mailing list.
Maybe I'll be back at the bcd forum at dsource.
unknown kirjoitti:
> Hi,
> no pressure..
>
> do you have solution for anonymous union/structs? Can't use -N option to just for now ignore, because they are anonyous, or can I?
>
> For example in SMaterial.h:
> union {
> struct {
> ITexture* Texture1;
> ITexture* Texture2;
> ITexture* Texture3;
> ITexture* Texture4;
> };
> ITexture* Textures[MATERIAL_MAX_TEXTURES];
> };
>
> Problem is that it generates illagel code in SMaterial.cc and SMaterial.d, like:
>
> void set_Texture1(ITexture * x) {
> _BCD_set__ZN3irr5video9SMaterial4._104._118Texture1E(__C_data, x);
> }
>
> There are lot of things irrlicht brings surface, that I think are quite common and not impossible to solve.
>
> Thanks
>
>
> Gregor Richards kirjoitti:
>> Sorry I haven't responded yet, I've been busy with other projects. I'll try to help out ASAP.
>>
>> - Gregor Richards
>>
>>
>> unknown wrote:
>>> Hi!
>>>
>>> I try to work on Irrlicht..
>>>
>>> So I got all files generated, except one not important I could exclude (propably much more files could be excluded)
>>>
>>> But then for example vecror3d is template class so it needs to be worked on.. so I add option -Tvector3d to the command, which is now:
>>> ./bcdgen $1/${i}.h irrlicht -I/home/me/D/bcd/irrlicht-1.1/include/ -r -E -P -DV -Tvector3d -Tvector2d
>>>
>>> Get output:
>>> vector2d
>>> In file included from <command line>:88:
>>> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
>>> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
>>> vector3d
>>> In file included from <command line>:88:
>>> bcd/irrlicht/template_D.h:3: error: 'vector3d' is used as a type, but is not defined as a type.
>>> bcd/irrlicht/template_D.h:4: error: 'vector2d' is used as a type, but is not defined as a type.
>>>
>>>
>>> template_d.h:
>>> #include "../bind.h"
>>> #include "/home/me/D/bcd/irrlicht-1.1/include/vector3d.h"
>>> vector3d<DReflectedClass> __IGNORE_vector3d;
>>> vector2d<DReflectedClass> __IGNORE_vector2d;
>>>
>>> Also template_D.h seems to be regenerated for every header, so it includes only vector3d.h.. I am not very experienced..
>>>
>>> maybe better idea to remove templates by duplicating the template class to two separate classes vector3df and vector3di? They are typedefed anyway there..
>>> typedef vector3d<f32> vector3df;
>>> typedef vector3d<s32> vector3di;
>>>
>>> Thanks.
>>>
>>> Gregor Richards kirjoitti:
>>>
>>>> I made an attempt at OGRE, which was unfortunately not very successful, because OGRE makes heavy use of the STL :(
>>>>
>>>> - Gregor Richards
>>>>
>>>>
>>>> unknown wrote:
>>>>
>>>>> Hi!
>>>>>
>>>>> I do not think it is competing too much. Native gui is necessary and important for D to collect momentum. Momentum brings more native work.
>>>>>
>>>>> But seems many ports to native D are started and then cancelled (no time, no interest, no people), so I see bcd very necessary.
>>>>>
>>>>> I did not know bcd. I am interested if binding to 3d engine like Irrlich, Ogre or similar could be generated. I might give it a try.
>>>>>
>>>>>
>>>>>
>>>>> Gregor Richards kirjoitti:
>>>>>
>>>>>> I hate to compete with the far more compelling FLTK-port-to-D thread, but I don't think many people know about this, and it's definitely useful. There are FLTK2 bindings in D, autogenerated by bcd.gen ( http://www.dsource.org/projects/bcd/ ). Since they're generated automatically, they have very nearly the exact same API as the native C++ ones, PLUS they're easy to keep up to date (if they become incompatible, I can just run the script again and bring them up to date).
>>>>>>
>>>>>> They're available in SVN, info on checking them out is on the BCD web page ( http://www.dsource.org/projects/bcd/ ).
>>>>>>
>>>>>> Finally: These bindings have been partially but not completely tested. If you find a problem, it can probably be solved quite easily, in most cases it's a discrepancy between the FLTK2 .h files and .cxx files (naughty naughty). Just tell me by some means (NG, email, whatever).
>>>>>>
>>>>>> - Gregor Richards
| |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply