Blitxmax comments

Blitz3D Forums/Blitz3D Beginners Area/Blitxmax comments

sswift(Posted 2004) [#1]
I checked out the Blitzmax docs someone posted on the Max forums and I have a few comments.

1. What's with all the mentions of licenses? Do I now need to be concerned with whether or not a particular function can be used in a particular product? Ie, some functions cannot be used in commercial products if said products do not also include their source? I don't want to have to worry about that crap!

2. What's with the white background? Very hard on the eyes. I like the standard blue background color with yellow text.

3. I read from left to right, not right to left. Ergo, the first thing I need to select, the function I want to view, should be on the left side of the page, not the right.

4. When I click on a particular module, instead of getting a list of functions to select from in the module pane, I get a page which has ALL functions for that module all listed. I use the help file a LOT when I'm coding, and a lot of the time I don't know exactly which section a particular function would be in, because they never have been arranged very well. But now I don't even have that basic function arrangement, and I'm going to have to scroll through huge pages full of functoons to find the one I need? And if I'm on the wrong page, I'll have to scroll through page after page looking for it? Yuck.

5. Why are there TWO compress functions for compressing a PNG image, when the only difference is that compress2 has an extra parameter on the end which defines the level of compression and could simply have been an optional parameter?

6. Also for this function, why do the docs say nothing about what value value ranges for the amount of compression are?

7. LIGHTBLEND, SHADEBLEND. Oh god no.

PLEASE use terms ADDBLEND and MULTIPLYBLEND. This kind of crap is what the makers of Darkbasic are doing! They use terms like MATRIX to refer to terrains and GHOSTING to refer to alpha blending or add blending or something. See? I don't even know which it is!

You aren't doing any beginning programmers a favor by teaching them the wrong terms to refer to things, and Blitzmax is clearly designed more for professionals who should know the proper terms already.


Oh and just so you don't feel bad cause I'm only piinting out bad things...

"GetViewport( x Var,y Var,width Var,height Var ) Get dimensions of current Viewport"

Woo! The ability to return multiple values from a function in the function parameters. And a viewport size function! If only BLitz3D had that... I've wanted one for a while. And a function to return an image's masking color... I wonder if you included that in Max... ... Yes! :-)


Now fix the docs and the colors please!


Shagwana(Posted 2004) [#2]
i got a fix for you for problem 7 :)
Const ADDBLEND = LIGHTBLEND
Const MULTIPLYBLEND = SHADEBLEND 'or what ever it was!


sswift(Posted 2004) [#3]
Yes very funny, but the main problem I have with those is that beginners will learn the wrong terms, and I really ougth not need to create such constants, and it will confuse people who use my code. :-)

Oh that reminds me... I heard there were constants for lots of the keys on your keyboard. That's great... for the longest time I was using a constant file I made myself for that in Blitz, though I eventually gave up on using it cause it was a a pain to include it all the time. It'll be nice to have it be part of the language so it's always there.


WolRon(Posted 2004) [#4]
I have a comment.

I don't like the fact that no-one from Blitz Research has answered any of (ALL of) these "forum sucks" threads with a response.

If they don't want to change it, the LEAST they could do is state that publicly.

And if they are willing to change it, they should let us know.........


EOF(Posted 2004) [#5]
There are lots of 'goodies' in BMax. Some things which tickle my fancy ...

* Shorthand coding. Example:
From
BlueAlien.Xpos = BlueAlien.Xpos + OrangeAlien.Xpos
To
BlueAlien.Xpos :+ OrangeAlien.Xpos


* Small exe files. With the FrameWork command you can import only the mods required.
* Strict - option explicit
* Error handling- Throw/Try/Catch/Assert

Example of 'Assert'
Capture errors whilst debugging (ignored in the release version):
i=LoadImage("blah.bmp")
Assert i Else RuntimeError "No image loaded!"

* Array handling and slices:
a$[]=["orange","yellow","blue"]
Print a$[1]                     ' "yellow"
b$="Slice me up"
c$=b$[7..8]                     ' "me"

* Include your media with IncBin
* OOP crazyness
* Pointers
* Lots of variable types (Byte/Int/Short/Float/Double etc..)


QuickSilva(Posted 2004) [#6]
Could you please point me towards where these docs are as I cannot find them :(

Jason.


QuickSilva(Posted 2004) [#7]
Cheers Steve :)

Jason.


Robert(Posted 2004) [#8]
I personally like the colours. An easy compromise would be for the docs to get their colours from a css file which we can then edit.

The license issue is unavoidable. If you don't want to have to worry about them, then stick with the BRL modules.


Kanati(Posted 2004) [#9]
Could you please point me towards where these docs are as I cannot find them :(


Someone posted a zip of them without permission. The post has been removed. Buy Bmax and you too can read the docs. :)

As for the license things... Which commands/mods are we talking about? Are there parts of the language now that are GNU or something (if so I'll ignore the gnu license quite frankly as I find it irritating and useless).


Perturbatio(Posted 2004) [#10]
Buy Bmax and you too can read the docs. :)

Download the demo and you can read the docs.


Perturbatio(Posted 2004) [#11]
As for the license things... Which commands/mods are we talking about?


Most of the modules are under the BSS license (which I'm pretty sure skidracer won't mind me posting):

Those that are derived from other sources (i.e. Ogg support, libpng, etc) each have their own licenses which you are subject to if you choose to use them.


Blitz Shared Source Code License
--------------------------------

This source code is the property of Blitz Research Ltd.

This software is provided 'as-is', without any express
or implied warranty. In no event will the authors be held
liable for any damages arising from the use of this
software.

You may distribute executable applications built from
this source code under your own licensing terms. You may
not distribute static or dynamic library files based in
whole or in part on this source code.

You may modify this source code for your own purposes and
can choose to publish such modifications to the BlitzMax
Community page at http://www.blitzmax.com. You
may not publish this source code or any modified
version of it elsewhere.

By publishing modifications to http://www.blitzmax.com, you
agree that other members of the Blitz community are free to
use those modifications in their own projects, and that
Blitz Research Ltd are free to include your modifications
in future source code releases.