|
Post by Darkjester on Jun 16, 2012 13:36:52 GMT -5
hey angros good work, i noticed you have gltexgrid.cpp and .h does this directly integrate with the basic4gl code at this point?
|
|
|
Post by angros47 on Jun 17, 2012 3:35:58 GMT -5
No, it doesn't integrate (it's not even in the make file).
My goal is to create a library that can be used in freebasic, too (originally, freebasic and basic4gl were compatible: the sprite library broke compatibility, since it was not available in freebasic and I'd like to fix it). I was going to port the text grit into freebasic, but it doesn't look possible: the text buffer, inside freebasic, is managed in a different way, and there is no simple solution to access it from an external library, so implementing the text grid would require to change fbgfx. And implementing the text grid without accessing to freebasic text buffer would mean that commands a new set of commands would be required to access text (so, no more PRINT, but something like TEXT or PRINTAT). Also, with screen sprites, it's possible to use built-in freebasic pages (that supports all freebasic commands: not only PRINT and COLOR, but also LINE, DRAW, CIRCLE...) directly, so there is less need for text grid.
I'm not sure about what to do for basic4gl; there are many solutions:
1) We could create a simple image buffer, render text on it, and use it as a virtual screen: the scroll can be done with a simple memcpy, a simple change in the PRINT command will do the trick, and we'll have a library that will work in the same way under freebasic and basic4gl;
2) The sprite library can be forked: a version for Basic4GL (with text grids), and another version for freebasic (with no text grids); supporting both versions would become more difficult, and compatibility between basic4gl and freebasic would be affected.
3) I could implement text grids anyway, adding more commands (like TEXT x,y, "hello world"); some commands would be redundant, at least in freebasic, but the library would be more versatile, and in Basic4GL would be possible to keep the actual text grids.
I haven't decided yet: I'm open to suggestions.
|
|
|
Post by Darkjester on Jun 17, 2012 17:08:14 GMT -5
speaking entirely of text, i was gonna implement a few opengl based commands to draw to the opengl window based on the nehe program that comes with basic4gl, and i was gonna implement "real console window" which is currently the debug as well so that way you can use both but if you think we could do an entire text engine that goes with sprites be my guest its beyond the scope of the project on my part. keep up the good work 
|
|
|
Post by angros47 on Jun 17, 2012 17:25:07 GMT -5
With a true console, there will be no more need for a text engine; even text-based programs (like the PONG demo) will use the real console.
Maybe, I could do text sprites: i.e. sprites that are created from a string, and displayed with a special font; they will always be of only one line, and the programmer will be able to place them everywhere, to scale/rotate them, and to set alpha level; they would be useful to display score, or messages like "Game Over", "Level Up" and so on.
|
|
|
Post by Darkjester on Jun 17, 2012 23:56:36 GMT -5
do it with ogl! davyfunctionlib is no deprecated, replaced with JoshSDLLIB, i think i finally got all the OGL functions back into it, this is so slow doing this last part furreal, another hour should be good 
|
|
|
Post by Darkjester on Jun 18, 2012 16:08:23 GMT -5
Mathews updating the GIT! everyone check it out  I put alot into cleaning it up and getting it to where it is but its still not all the way their yet!
|
|
|
Post by James :) (aka Madcow) on Jun 18, 2012 16:22:17 GMT -5
ohh will check it out 
|
|
|
Post by matthew on Jun 18, 2012 18:21:21 GMT -5
I'm seriously reconsidering whether we should be using Git, lol. ;D I've had a total nightmare trying to merge the new version with the old. Did you download the source for your version from Git Josh, before you started making changes? Or did you just make changes to a version of LinB4GL you had locally? I could have forcibly updated the remote version but decided against it, so no harm's been done. I just uploaded the new version here.
|
|
|
Post by Darkjester on Jun 18, 2012 23:19:58 GMT -5
i started with the version i already had on git, but gits just a pain.
|
|
|
Post by DJLinux on Jun 19, 2012 0:56:43 GMT -5
In Windows it works like this: You have a "stub" .exe containing the VM (Virtual Machine) and libraries. The start-up code pulls data out of a Windows resource and streams it into the VM. This sets the VM up as if you had just compiled the program, and it can simply run. Your source code are an open book :lol:
|
|
|
Post by Darkjester on Jun 19, 2012 10:34:06 GMT -5
In Windows it works like this: You have a "stub" .exe containing the VM (Virtual Machine) and libraries. The start-up code pulls data out of a Windows resource and streams it into the VM. This sets the VM up as if you had just compiled the program, and it can simply run. Your source code are an open book :lol: hmmm? lol, djlinux is it possible to utilize your scite code?
|
|
|
Post by Tom Mulgrew on Jun 20, 2012 18:03:56 GMT -5
In Windows it works like this: You have a "stub" .exe containing the VM (Virtual Machine) and libraries. The start-up code pulls data out of a Windows resource and streams it into the VM. This sets the VM up as if you had just compiled the program, and it can simply run. Your source code are an open book :lol: Haha.. Actually old Basic4GL versions used to create standalone exes which contained the Basic4GL source code. But now it includes the compiled VM op-codes instead, so there's some privacy :-)
|
|
|
Post by Darkjester on Jun 20, 2012 19:12:08 GMT -5
Tom Mulgrew 1, hackers 0 bahaha, have you had a chance to look at the current build Tom?
|
|
|
Post by angros47 on Jun 21, 2012 11:39:51 GMT -5
DarkjesterYou said you are going to add some 2d commands: are you going to do something similar to that? www.freebasic.net/forum/viewtopic.php?t=10607Because I'd like to know what command are you going to implement, so I'll be able to try to keep compatibility with FreeBasic.
|
|
|
Post by Darkjester on Jun 21, 2012 12:56:01 GMT -5
DarkjesterYou said you are going to add some 2d commands: are you going to do something similar to that? www.freebasic.net/forum/viewtopic.php?t=10607Because I'd like to know what command are you going to implement, so I'll be able to try to keep compatibility with FreeBasic. well thats just the thing, shall we keep backwards compatibility? the sprite engines gonna be a DLL, so if you would like you could write your sprite engine in freebasic and make a dll with it. certainly makes it easier to implement certain things
|
|