Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Topics - bigsofty

Off Topic / RIP Ben Daglish
One of my all time 8-bit chiptune heroes Ben Daglish has passed away. His work on Deflektor, 3D Galax and  Auf Wiedersehen Monty we're works of genius that still hold up to this day. He'll be sadly missed.
Why? GLBasic uses the default OpenGL 1.1 headers for it's OpenGL. These are functional but lack a lot of features. Advanced blending modes, shaders with decent features etc. need GL 3.0+
To add OpenGL functionality to your project I use GLee (GL Easy Extension library), see here...

To use it within your projects all the hard work is done within the project options dialog. I used the GCC command line option to pre-empt the GLBasic linking process.

Before that though, I need a folder, within my games ("PMS") project folder to hold the GLee.h and GLee.c library files. See attached archive.

STEP 1: Create a container folder and copy the GLee files into it

For my PMS game, its in "MyC", within the PMS game project folder...

Code (glbasic) Select
"C:\Coding Folder\Projects\GLBasic\PMS\MyC"

Obviously change the "C:\Coding Folder\Projects\GLBasic\PMS\" bit to match your own projects path.

Once that has been created. Extract the files mentioned above into the "MyC" folder.

STEP 2: Include the header and link it's library file in the project options

Open your project options dialog ( In the GLB IDE Menu - "Project" then "Options" )

An on your "cmp" (Compiler command line options) and "lnk" (Linker command line options) add these two lines (keep the quotes BTW)

In "cmp" ...
Code (glbasic) Select
-I"C:\Coding Folder\Projects\GLBasic\PMS\MyC" -include GLee.h

In "lnk" ...
Code (glbasic) Select
"C:\Coding Folder\Projects\GLBasic\PMS\MyC\GLee.c"

Save and exit.

Thats it!

Here's a very quick test for OpenGL 3.0 support ...

Code (glbasic) Select
  //OpenGL 3.0 is supported (Minimum)
  DEBUG( (DGStr)" OpenGL 3.0+ supported " );
glClampColor(GL_CLAMP_READ_COLOR, GL_FALSE); // Quick usless OpenGL 3.0 only command
// to show that its working. Remove in final game!
// There should be NO compile errors if GLBasic accepts
// it as a valid inline command.

Check for errors. The above should be at the beginning of any program that uses this lib as it's a good check for older unsupported cards too.

A couple of tips.

Changing the linked library("lnk") "C:\Coding Folder\Projects\GLBasic\PMS\MyC\GLee.c" to ""C:\Coding Folder\Projects\GLBasic\PMS\MyC\GLee.a" allows for static linking of GLee and therefore much quicker compiles. But you will need to recompile (GLee.c & GLee.h into GLee.a) for any other platform other than Windows to staticly link it for another platform. There is a Windows "GLee.a" in the "" within the main archive. This is what I actually use.

Once the library is installed, you now have full OpenGL inline support using DGInt, DGNat, DGStr etc. This is VERY handy once you get comfortable with mixing inline GL code with normal GLBasic. It's also very easy to wrap the new GL commands.
Announcements / PMS
Here is my new game, PMS. It's a 3D all vector tube shooter, very old school in design.

I've added quick video of the first couple of levels. Only two baddies on the first levels but I think they are better for demoing it as its a bit less chaotic.

95% pure GLbasic + 5% inline C code for some GL work. Also, "P.M.S" is the alpha name, "X.T.C" will be the final name.

Important! Don't play the video from the Dropbox website, go to the top right and direct download it to your computer before you play it or it will be visually a mess.

About the video: For some reason Dropbox adds an extra level of compression when streaming, its already very compressed as I wanted to keep the video 1080p & 60hz, so it's a bit washed out a compressed to begin with. Drop box kills the res and frame-rate, no idea why. But my upload speed if 44k, so this took 2 days to upload! :P I'm a total noob with dealing with video recording and uploading. Oh and I'm sorry for the overlong pause at the main menu, that's me fumbling for the video overlay. Also, you may have to full-screen it as it's 1080p.

Oh, an you may notice the saturation go up an down a bit, I've rigged a filter to emulate old CRTs that is activated when I press back on my joypad hat for testing, kinda forgot that while recording and hit it by mistake a couple of times.

I'll add a progress report from time to time on this thread. Comments welcome.

Thank you for your time.

...OH, since the loading screen was cut off at the beginning...

Anyone done this in GLB?

If so could you point me in the correct direction of the link?
I bought one of these off of ebay...

Pretty ancient as steering wheels go but it cheap'n'cheerful. Now all I need is an arcade racer (I tried project cars but it was "too" realistic and felt a bit of a chore to drive).

Anyone getting something nice/interesting this year?

Off Topic / Internet = meh!
My internet provider went belly up, so I'm stuck using sporadic 3G. Looks like it will take a couple of weeks to setup a new land line connection. It's amazing how much the net takes up of your spare time, I never really noticed till it wasn't there. I have been forced have actual conversations with real people and read actual books!  :D

I also never noticed how much time I spent tweeting, Reddit, reading mail, checking git hub, coding sites etc. I think it must me 2-3 hours a day!

If I didn't need it for my day job, I'd consider leaving it off as I feels like it can consume an unhealthy amount of your time... maybe!  :P
by me one of these...

Seriously though, I know it's really just made up from a RaspPI+VICE emu or something similar but the games look good as does that joystick (looks like a Quickshot Competition Pro?).
Anyone use sequencing software(Ableton, Reaper, FLStudio etc.)? Looking for some recommendations, I need to record and edit some sound + midi? :doubt:
Starts tonight at 6:00pm CET, always good for a couple of bargains(esp. if you have kids that have PC's  ;/)
Off Topic / CRPG Book

This is a preview by the author but it is already a great read for anyone who is into CRPG's. I thoroughly enjoyed it!  ;)
Nice curated page of asset sources and asset creating utilities.
Gloss3D -

Seems a very capable little modeller and it's free, under development and opensource.  :good:
No longer can I post videos?


Lots of handy utils going real cheap(I use Dashlane already, it's a great safe way to handle passwords BTW).

This tickles my geek interest, took him two years and an amazing amount of insight into CPU design.  :nw:
GLBasic - en / Ugh so dumb!
I just wasted two hours looking for a bug. I have a sample loaded into memory when the game runs and it wasn't playing, it did earlier today. I spent the last two hours, checking and rechecking the loading, player code adding stubs etc... to no avail. Then I finally realised what the problem was. I use VLC Media Player to browse the samples and choose the ones I need. I have one paused, as I have the sample play on repeat. It also had been minimised. My game refused to play one sample(no error just silence) and I had forgotten that it was open in VLC. To cut a long story short... VLC had the file locked down for it's own use when I paused it and my app carried on regardless in blissful silence, not being able to use the sample... arg, lesson learnt!  :giveup:
Not sure how long this has been but last time I looked you had to purchase digital back issues of MagPi, so being able to download them for free now was a pleasant surprise.
GLBasic - en / FLOOR()
Undocumented? Seems to be present but not in the docs?

Handy to have all the same.  ;)

This is a 3D animation and rigging utility. The reason I mention it is, that's its currently half-price (and is available on Steam too) and 1 month trial is available on the website. But mainly, it's so damn good at what it does. Motionbuilder is the best that you can get IMHO(but it's way too expensive!) but this is a very close second. One thing though, it deals with FBXs, so you will need a method for converting them into a usable format for GLB. I've wasted a lot of cash on various animation utilities, it's a breath of fresh air to actually recommend one.