Best options for 3D

Started by _PJ_, September 01, 2018, 12:02:42

Previous topic - Next topic

_PJ_

I understand there has been some issues historically in complementing BlitzMax with 3D graphics.

I see a lot of discussion regarding shaders and other specifically 3D accelerated function.

So what's the curently favoured option and how to integrate with BlitzMax.

Also, what are the biggest known issues/drawbacks?

__

Finally, I am not looking to generate any high-end visual artistry, the DX7-era functionality of simply viewing and manipulating polygons in a 3D environment is sufficient.

3DzForMe

Well, I cannot speak for other 3D options that are available at the moment other than native Blitz3D.

I have used Blitzmax in the past with some success, without 3D libraries however.

I know that, despite Blitz3D is now unsupported, I have proven that it works well with Windows 10 today with a project I have spent a few years on.

Also, in my experience, the syntax within Blitz3D is second to none for the level of manipulation it affords the coder.

To qualify, for my sins, I've coded in the good old native C for a bit - that stuffs hard work ;)
BLitz3D, IDEal, AGK Studio, BMax, Java Code, Cerberus
Recent Hardware: Dell Laptop
Oldest Hardware: Commodore Amiga 1200 with 1084S Monitor & Blitz Basic 2.1

Henri

Hi,

for Blitzmax I would first lookup https://github.com/markcwm/openb3dmax.mod.
Author is around here, and the wrapper(markcwm) and library(angros) still receive updates.

There is a thread by Krischan to show what can be done with it. https://www.syntaxbomb.com/index.php/topic,27.msg205.html#msg205


-Henri
- Got 01100011 problems, but the bit ain't 00000001

_PJ_

Thanks for the replies. I should perhaps have mentioned that I require a more comprehensive class object hierarchy, somethin lacking in Blitz3D "custom type" structure which is mainly why I am using BMax.

__

As for the https://github.com/markcwm/openb3dmax.mod

It seems this is only for "NG"?

If not, any tips on how to install the mod? Every time I try adding new mods, there are errors.

Henri

It should work in legacy Blitzmax as well.

Basic information about building modules can be found in MaxIDE. See right side panel for "Help / Language / Modules ".
Building modules requires MinGW like https://sourceforge.net/projects/mingw-w64/.

I would recommend switching old bmk (Blitzmax maketool) found in bin folder, to Brucey's version found here https://github.com/bmx-ng/bmk.
Brucey's bmk searches MinGW installation folder in <Blitzmax-folder>\MinGWx86  (for 32bit) or <Blitzmax-folder>\MinGWx64  (for 64bit), or in legacy just the 32bit version in <Blitzmax-folder>\MinGW32

This way you can try different MinGW-setups without effecting your (possible) existing MinGW environment.

As for NG, it's essentially same as legacy but more. You can try it from https://github.com/bmx-ng/bmx-ng/releases
MinGW is already included.

-Henri   

- Got 01100011 problems, but the bit ain't 00000001

_PJ_

I cannot do this.


The instructions state:

"•Copy openb3dmax.mod to the MyBlitzMax/mod folder, module folder names must end in .mod"

There are numerous folders with the name "openb3dmax.mod" contained with the download, including the "openb3dmax.mod - master"
This ambiguity is not resolved anywhere in the documents.

ATtem,ptong to run the bmk command results in a short pause, with no visible results.

_

Microsoft give clear instruction for their convention and standards for installation requirements.  This maverick approach ignoiring these conventions doesn't serve anyone's best interests.

Derron

The instructions are clear ... and it depends on how you obtain the download.

if you go to
https://github.com/markcwm/openb3dmax.mod

you see that kind of folder structure - and the url contains the "openb3dmax.mod". Downloading it _now_ leads to an openb3dmax.mod-master.zip. If you downloaded it as "openb3dmax.mod.zip" your unzipping might result in the already correct "openb3dmax.mod" folder containing the various subfolders (ending with .mod too - the "openb3dmax.mod" is more a kind of a parent folder like "brl.mod" or "pub.mod"). This depends on the tool _you_ use to unarchive the download package.


I am not trying to attack you now: but if _that_ is already a nearly unsolvable problem for you, you might consider not to start coding as you will face way harder problems :).


bye
Ron

_PJ_

Quote from: Derron on September 02, 2018, 12:18:18
I am not trying to attack you now: but if _that_ is already a nearly unsolvable problem for you, you might consider not to start coding as you will face way harder problems :).

I've been coding for over 30 years.

Sorry, but your comment IS an 'attack', (or at least, rude) and putting a stupid "emoji" at the end does not make it any less so.
The point is, the instructions refer only to placing a folder in a location. There are multiple such named folders. This is ambiguous.

I have (throughout my many years of experience) learned that ambiguity can lead to problems, and it is ALWAYS best to be certain.

Maybe you disagree, but I prefer to ask and make sure of the facts before continuing headstrong - this has nothing to do with ability nor capability, so you should not be criticising a different approach.

I'm ever so sorry I thought to seek help from this forum. I guess I shouldn't in future and maybe I should just give up entirely because programming is too difficult for someone who is such a fucking braindead cunt.

Well, seems the old, "friendly" Blitz crowd have given way to condscending arrogance.

Ciao.

Henri

Usually, if asked politely, others will try to help you (as I believe I have tried to). If you come without prior knowledge about Blitzmax, then it can't be expected that everything falls into place in a day (or indeed give an all answering reply).  Also, how experienced a person is isn't always obvious from a post, unless the question is really detailed. Usually I give tools for people to get to the end, and if something is unclear, then one can ask about more specific issue.

I don't think people in this forum are generally rude, lot have been around sense the days of the old Blitz. But as this is a free forum for all, it's up to people using it really.

Good luck to your coding endeavors.

-Henri 
- Got 01100011 problems, but the bit ain't 00000001

Derron

Quote from: _PJ_ on September 02, 2018, 12:36:47
I'm ever so sorry I thought to seek help from this forum. I guess I shouldn't in future and maybe I should just give up entirely because programming is too difficult for someone who is such a fucking braindead cunt.

Well, seems the old, "friendly" Blitz crowd have given way to condscending arrogance.

Your words, not mine.

And the ambiguity is selfmade. If you only needed the subfolder with the name of the parent folder: where would _all_ the others go to? Wouldn't you think that the author would have recognized that he missed to describe where the other 8 folders have to put into?

A programmer would also try out stuff a bit (at least the easy steps) instead of investing time to write a post - and to wait for a reply. Writing this is not _arrogance_ and this especially now as you stated to be a programmer for 30 years. So surely 30 years of tinkering around on how to accomplish things.


As you now surely have added the module correctly, go up to the next step (compile the modules if needed) and then play with the module and maybe some samples (here and there).


@ feeling attacked
This is surely a matter of your heritage. The dudes here coming from the UK are also a bit thin-skinned when it comes to critics ;-). So maybe in your country it is also not as common. My intention is not to stop you from coding - but stopping you from spending time on posting stuff which you might at the end solve on your own in the very same time.

But yes, I understand, that not all start with the same knowledge on certain stuff - so my POV might be a bit biased.


bye
Ron

markcwm

#10
QuoteThere are numerous folders with the name "openb3dmax.mod" contained with the download, including the "openb3dmax.mod - master"
This ambiguity is not resolved anywhere in the documents.

Hello, I'm the author of Openb3dmax. Yes, this is an omission as I assumed the user is already familiar with the Bmax mod system and Github version names, I'll add a comment about removing "-master".

If you're looking for a Bmax Opengl 3d engine for desktop then I think Openb3dmax is probably the best overall free option now, but it's still a WIP and development is a bit slow but hopefully I'll get there in a year or two.

Krischan

Henri already mentioned my OpenB3D project written in Blitzmax+OpenB3D. If you don't need shaders you can even still use Blitzmax+miniB3D, see www.extrasolar.de > Gallery > Downloads for some Demos with full Source examples created with miniB3D by me. For example the Temperate Planet Demo is still very exciting and works without shaders.



But to be more future-proof (for example 64bit and continuing OpenGL fixes) you should use Blitzmax NG and OpenB3D IMHO. Mark, the developer of this wrapper is around here and answers questions and helps with issues while miniB3D, well it works but is way outdated now. OpenB3D is easy to use and you're getting quick results and with Blitzmax you can handle large projects in a object-oriented style. And if features are missing, check out Bruceys Modules or write your own module if needed.

I'm currently stuck to 32bit BlitzmaxOS because I need the BLIDE IDE for my larger project while BlitzmaxNG has the MaxIDE "only". Don't understand me wrong - MaxIDE is sufficient for the most projects but I love to code in BLIDE to have full control over the whole project. Unfortunately, BLIDE isn't developed further and I don't think they'll upgrade it to make it NG compatible.
Kind regards
Krischan

Windows 10 Pro | i7 9700K@ 3.6GHz | RTX 2080 8GB]
Metaverse | Blitzbasic Archive | My Github projects

_PJ_

I'm really unsure of what it is I'm doing wrong.
I've tried to ensure the BMax NG is up to date and I've not used any other "mods" except those that were included.

The output (even with Verbiosity on) is limited but does identify a particular functionality within this module

Quote
"C:/Program Files/BlitzMax/bin/bcc.exe"  -g x64 -m openb3dmax.ddsloader -v -h -s -p win32 -o "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/.bmx/ddsloader.bmx.debug.win32.x64.s" "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/ddsloader.bmx"
Build Error: failed to compile (-1) C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/ddsloader.bmx


If I try to compile ddsloader.bmx directly, again there is little of use in the Output log:

QuoteBuilding ddsloader
Loading C:/Program Files/BlitzMax/bin/custom.bmk
[ 23%] Processing:source.bmx
"C:/Program Files/BlitzMax/bin/bcc.exe"  -g x64 -v -h -s -p win32 -o "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/.bmx/source.bmx.debug.win32.x64.s" "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/source.bmx"
[ 23%] Processing:ddsloader.bmx
"C:/Program Files/BlitzMax/bin/bcc.exe"  -g x64 -v -h -s -t gui -p win32 -o "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/.bmx/ddsloader.bmx.gui.debug.win32.x64.s" "C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/ddsloader.bmx"
Build Error: failed to compile (-1) C:/Program Files/BlitzMax/mod/openb3dmax.mod/ddsloader.mod/ddsloader.bmx
Process complete

I appreciate there's little to go on here, but it may be helpful if at least anyone can shed insight from similar experience for example.

I suspect that the point at which this error is introduced may be symptomatic of some other issue, for example, some bad configuration of BMK or the BMax NG compiler etc.?

markcwm

It may be to do with Openb3dmax being out-dated in some way, I haven't tested with the latest NG but it's known to fail on modern C++11 compilers GCC 7+ which is what NG now uses, try it with v0.93. I don't know why it's failing on ddsloader but you should be able to just not build it as it's a separate mod, just rename the folder mod- or something and rebuild.

TomToad

Do not put BlitzMax in the Program Files directory.  Windows doesn't like that directory modified after the initial install.  Instead, install it to the root directory (C:\Blitzax), or your home directory (C:\users\userName\BlitzMax), or some other working directory not protected by the WIndows administrator control (such as D:\Development\BlitzMax)
------------------------------------------------
8 rabbits equals 1 rabbyte.