BlitzMax Info
BlitzMax Forums/BlitzMax Beginners Area/BlitzMax Info
| ||
I've been wanting to get BlitzMax for some time (I still don't have any money for it) and was wondering what are the best main features about it. What is different about BlitzMax's 2D and BlitzPlus's 2D (besides the alpha and transparency and real-time rotation and scaling). I keep checking on MaxGUI to see if an update has been released so I can dowload the BlitzMax demo again. |
| ||
A notable difference compared to B+/2d/3d is that in max you don't draw to an imagebuffer, you lowlevel put your bytes into pixmaps, and then you draw the pixmap to where you want 'em. |
| ||
Well I know it's not to do with 2D but the whole OOP thing is just great. |
| ||
another difference: since blitzPlus 2D is true 2D, while blitzMax is 2D-in-3D. That means that identical visuals (a long as you do not use any transparancy, rotation, etc.) are going to be faster in BlitzPlus if you have a low-end video adapter. (2D-in-3D needs a lot more horsepower than plain old 2D like B+ uses) finally, BlitzMax needs either DirectX 7 or above, or OpenGL. BlitzPlus needs DirectX 1 or above. |
| ||
(2D-in-3D needs a lot more horsepower than plain old 2D like B+ uses) That's not necessarily true. Plain Old 2D technology hasn't advanced much since the Matrox Millenium (except that RAM speeds have increased). So in case your graphics card is PCI or better it's quite likely that it's 3D performance is much better, than its 2D equivalent. |
| ||
Ked, All those effects you mention (transparency etc) will be a lot faster in Max. You can also have multiple lists for one type rather than being confined to a single one, which is handy. There is a built in method for compiling resources (gfx,music) etc into your executable and the improved compiler should also generate faster code. Text is now hardware accelerated and fast enough to use in your main loop. |
| ||
... you get the source for BlitzMax which is, mainly, written in BlitzMax. |
| ||
For pure old fashioned 2D (with no hardware alpha, scaling, rotation) stick with BlitzPlus 2D. For advanced hardware supported 2D with alpha, scaling, rotation, etc, you have 2 choices: 1) PC only: Blitz3D with SpriteCandy, etc. This is a very fast solution and the tests I've recently seen indicate for pure 2D sprite based rendering, this is faster than Blitzmax 2DMax rendering speeds. But in all fairness, you could code similar results in Blitzmax with custom low low level routines, etc. 2) If you want to code games on PC, Mac, Linux, then Blitzmax is the way to go. 2D rendering speeds are plenty fast due to hardware support. But your rendering speed is directly related to the power of the onboard GPU on the computer. There is no guarantee that your 2000 sprite demo will run at 60fps on every end user's machine. Hence the need for time based code. So it really depends on your needs as a coder. ;) |
| ||
For pure old fashioned 2D (with no hardware alpha, scaling, rotation) stick with BlitzPlus 2D. I don't see why. In my tests (my firedemo and crossfader), pure pixel throughput in BlitzMAX is significantly faster than in Blitz3D or Blitz+, to the point where full-screen pixel effects are feasible in BlitzMAX. |
| ||
"I don't see why. In my tests (my firedemo and crossfader), pure pixel throughput in BlitzMAX is significantly faster than in Blitz3D or Blitz+, to the point where full-screen pixel effects are feasible in BlitzMAX." I havn't had those kind of results on my intel onboard gpu systems. Do you have a few links to your demos I can run? Thanks. |
| ||
I challenge you to make this code at least half as fast in bplus or blitz3d: "pure pixel bashing". use an image 800 by 600 or bigger. <edited> corrected stuped typing mistake. |
| ||
Graphics width,height,768,32 Not seen those parms before. What does the 768 do? |
| ||
sorry, take that number away, quick post that slipped. it originally was 1024x768.just get rid of the 768, that was the size of my original image. |
| ||
That's not necessarily true. Plain Old 2D technology hasn't advanced much since the Matrox Millenium (except that RAM speeds have increased). So in case your graphics card is PCI or better it's quite likely that it's 3D performance is much better, than its 2D equivalent. Perhaps not always, but on my old laptop (rage mobility) I get 100 FPS in b2D, and the equivalent in Bmax runs at 0.5 FPS. That's the difference between perfectly capable and utterly unusable. |
| ||
Ok. Thanks everyone for your responses. |
| ||
Jesse, yah, that's pure pixel bashing. How fast does that run on your system by the way? Also, a better more obvious, real world, example would be 2000 32x32 sprites being rendered in Bmax compared to Blitz2d or Blitz3d. |
| ||
Also, a better more obvious, real world, example would be 2000 32x32 sprites being rendered in Bmax compared to Blitz2d or Blitz3d. No it wouldn't. Since the two use vastly different rendering techniques, the results would be totally ambiguous. |
| ||
In my honest opinion, the choice of BlitzMax has nothing to do if it requieres DX1 or DX7 or DX10 or OpenGL. Also, I don't think it is so important if it can render faster than B3D or Blitz2D. B3D is proven to be fast enough in most situations. BlitzMax is proven to be fast enough in most situations. (In my computer, with my own code, I get BlitzMax rendering a lot faster than B3D, but you know...) The choice, in my opinion, has more to do with the language itself and in this area, there's no doubt BlitzMax is the winner. If you are able to create good quality games or applications using Blitz2D or Blitz3D, surelly you will be able to do it also using BlitzMax. The benefits: some additional capabilities of the built in rendering engine, the possibility to mix C and C++ code with BlitzMax code, some very useful OOP features including reflection, faster code in most situations (I'm not talking about rendering here). And a large etc. If you dislike its rendering engine you can change it, you could even use the B3D rendering engine on BlitzMax... |
| ||
"No it wouldn't. Since the two use vastly different rendering techniques, the results would be totally ambiguous." The original question was "What is different about BlitzMax's 2D and BlitzPlus's 2D (besides the alpha and transparency and real-time rotation and scaling)." so it's very relevant to see the rendering speed of each language via the pipeline used. That's why it would be important to see a similar sprite test done in each language. |
| ||
it's very relevant to see the rendering speed of each language via the pipeline used No it isn't because it's vastly dependent on hardware. As long as you have a graphics card made in this century, BlitzMAX will be faster. At everything. |
| ||
@JGOware it does 59 fps Bmax. and 4 fps on blitzplus Bmax version can still be optimized to go faster. AMD 2GHZ GeForce FX 5200 pci. and yes, sprites are faster also. if you have something to prove otherwise, post it. I would like to be proven wrong. |
| ||
@jesse 15fps on my system. I think I see a pattern evolving, you guys have fairly advanced 3d cards where I just use Intel On Board graphics for all development. So perhaps 3D on those other boards is alot faster compared to the "2d via 3d" rendering on my box. But the majority of users still use on board intel graphics. |
| ||
But the majority of users still use on board intel graphics. I see so many people here post this. I would like ot see proof. Sure, there are a lot of motherboards with it, but there are a lot with ATI video onboard too. Also, just because a board with Intel sells doesn't mean it is being used to play games. I would just like to see some proof that the "majority" of users use it. I went into Costco and looked at the PCs there, I think one of them had on-board Intel video out of 8 or 10 systems. |
| ||
But the majority of users still use on board intel graphics. I don't know about the majority. maybe a large quantity. I built my computer at least 3 yrs ago and they were some of the cheapest parts I found due to the fact that they were a little dated. right now you can buy a computer with a dual processor or better and a decent 3d graphics card (a lot better than what I got) for about $500.00. Everyone I know that has a computer (computer iliterate or not) has a better computer and better graphics card than I do. And some of them even rub it in my face. all games like Quake and the likes use 3d graphics cards. Don't you think that if there weren't plenty of 3d graphics cards, these games would be so popular. I can provide you with some senceless links where all they talk about the kind of graphics card they got. like the one below and you can see what I mean. http://forums.cnet.com/5208-7810_102-0.html?forumID=77&threadID=205802&start=15 |
| ||
right now you can buy a computer with a dual processor or better and a decent 3d graphics card (a lot better than what I got) for about $500.00. the problem is that the cheap PC's at your local PC store simply use the basic onboard GFX since it means either a lower sales price or higher profit for the local store. Same for the basic Dell, HP, Gateway, e-Machines, etc -- the entry models (which is what a large percentage of poeple end up with) all tend to have very poor 3D performance. (If it were great, noone would buy the higher end 'gaming' machine, right?) |
| ||
the problem is that the cheap PC's at your local PC store simply use the basic onboard GFX since it means either a lower sales price or higher profit for the local store. Sure. Nothing wrong with that though, and on-board graphics chips these days are more than adequate to play pretty much every game you could care to write in your BRL language of choice. all tend to have very poor 3D performance. I don't know what qualifies as "very poor 3D performance". My cheapo Dell laptop came with a GeForce7300 Go, and while it can't play games like Bioshock in all it's glorious beauty, it will certainly do better bouncing images around in BlitzMAX than in Blitz+. I don't know about the majority. maybe a large quantity. As far as I can tell, the the most commonly used graphics card is the GeForce 6600. While I'm sure there are plenty of people who do have absolutely horrible graphics cards, these are also the kind of people who do not use their computer to play video games. I know to most people here, the idea that you can use you computer for something other than games seems preposterous, but it's not nearly as uncommon as you might think. |
| ||
@xlsior you assume to much. When I go to Stores and Druel on what I would like to get, I defenitely look at brands and models and believe me the graphics cards are not that cheap. including brands such as Ati and nvidia. besides a graphics card like mine nvidia fx5200 that plays most games decently retails for about $25. http://www.newegg.com/Product/Product.aspx?Item=N82E16814127181R what makes you think a cheap computer can't have something like that or better? |
| ||
I've seen some shops, even recently, selling the fx5200 for £70 ($140) or more. It makes me cry at night that some people are stupid enough to buy it. |
| ||
There are 2 different FX5200 There is the GeForce 5 FX5200 and there is the CAD Card with that model name which is a totally different thing (its a GF7 level card) And the most commonly used graphic card is definitely no AMD or NVIDIA. Its unhappily somewhere between a GMA900 and GMA950 as most systems within the last 24 months sold with those chips. The valve survey is quite useless. People having it on the system (as those surveys are done on login into the Steam network) normally play a game from steam as well and they all need higher cards than intel onboard to play anywhere acceptable (even geometry wars is that demanding that it deactivates most of its visual features here on my GMA900 system, I've no glow nor anything and that although the GMA900 has Pixel Shader 2 hardware support. Something grid wars definitely did not which is a shame for the creators of Geometry wars). So if you ask for the common card in a sector where anyone has at least a low to mid end shader 2 card, it will logically end with the mid range shader 2 card of that date. The other interesting fact on that survey is that it is just wrong. It is putting the GF5 cards into the DX8 table, not the DX9 SM2 one, which quite clearly shows as well that this survey is highly biased. (GMA900 and GMA950 are SM2 but not GF5 according this which is at best crap and at worst fully planned fake) The only really usefull fact to get from that survey is the fact that most users have badly outdated drivers on their system. |
| ||
And the most commonly used graphic card is definitely no AMD or NVIDIA. Just because you say it, doesn't make it true. The valve survey is quite useless. Why? Because it's based on people who purchase and play video games? With more than 1 million people partaking in the survey, I'd say it's a more than reasonably representative. So if you ask for the common card in a sector where anyone has at least a low to mid end shader 2 card, it will logically end with the mid range shader 2 card of that date. Yes. What is your point? When trying to figure out the lowest common denominator for people who play video games, it would defeat the point to ask people who use their computer for e-mail and office applications. The fact that even a "casual" game like Geometry Wars doesn't even work on your crappy hardware, doesn't really speak volumes to the idea that people who have similar hardware are out there playing and buying video games. The other interesting fact on that survey is that it is just wrong. Yes. Because clearly you know better than Valve, which cards default to which rendering paths uwsing the Source engine. I mean after all, they only wrote the thing, so how much would they know about its internal workings? |
| ||
Why? Because it's based on people who purchase and play video games? With more than 1 million people partaking in the survey, I'd say it's a more than reasonably representative. Except valve is primarily used by big name games such as halflife and counterstrike -- so the majority of people using valve tend to have machines capable of running those games. It's a self-selecting bias towards FPS fans. Your grandma's computer won't be included in valve's stats, although she may very well be in the market for a casual puzzle game. |
| ||
the problem is that the cheap PC's at your local PC store simply use the basic onboard GFX since it means either a lower sales price or higher profit for the local store. these are your emachines prices dual core and nvidia: http://www.e4me.com/products/catalog.html?type=desktops and these are your nvidia comparison charts: http://www.nvidia.com/docs/CP/11036/PureVideo_Product_Comparison.pdf integrated? who cares! they do the job. mine is not even listed assumptions, assumptions, assumptions.... |
| ||
It used to depress me that discussions of this nature back a couple of years ago were so one-sided that it appeared (almost) no one on this forum ever considered the casual gamer. How the times have changed. Now it depresses me no end that (almost) on this board considers anyone else. |
| ||
Except valve is primarily used by big name games such as halflife and counterstrike -- so the majority of people using valve tend to have machines capable of running those games. It's a self-selecting bias towards FPS fans. There are other games on steam than Half-life and Counterstrike. But what you're failing to realize is that there are also plenty other archetypes of gamers not on Steam. Your grandma's computer won't be included in valve's stats, although she may very well be in the market for a casual puzzle game. Aside from the fact that the only casual games my grandmother plays are bundled with Windows (free cell and spider solitaire), her computer has a GeForce 6600 so her great-grandchildren can play LEGO Starwars on it. The only other game she's ever expressed any interest at all in buying is "The Sims" - one might say that outside of LEGO Starwars, The Sims and Free Cell there might as well not exist any other video games as far as she's concerned. Now it depresses me no end that (almost) on this board considers anyone else. What depresses me is this notion that casual gamers by definition it seems must have poor quality computers, because only hardcore gamers would ever need to buy a 20 dollar graphics card. It's like there's only 2 kinds of people in this world. People who spend thousands of dollars every three months upgrading their PC's and people who never upgrade their computers, ever. At all. Come hell or high water.Of course the complete irony here is that most people (what one might call a lucrative mainstream market) fall somewhere in between these 2 extremes - which is exactly what the steampowered survey illustrates perfectly. |
| ||
HI i have a question... Right now i have BlitzPlus because i got it for free. I really want to get BlitzMax, but before I do, i really want to know If I like Basic or not. Can i write the same kinda Programs in Blitzplus as BlitzMax? |
| ||
Gravedigger!! ;) As to whether you like Basic or not, you have to put the time in to figure that out yourself, nobody can tell you. BlitzMax is very similar to Blitzplus, however you may find the documentation inferior (it may have changed since I last looked). When I started with Max, I was programming almost identically to Blitz+. The only real difference I can think of that you have to implicitly create lists if you want them- objects are not automagically added to a global list like in B+. Blitzmax can do a lot more, which means increased complexity, but as I said, it's not complexity you have to touch unless you want to use those extra features. Some people are put off by the inclusion of these extras even though they don't need to even look at them. I never figured out why, but if you are one of those people, stick with B+. It is also worth considering Monkey (www.monkeycoder.co.nz) which is another BRL language with a lot of similarities to Max. |