View all by Blitz ResearchCreator

Follow Blitz ResearchFollowFollowing Blitz ResearchFollowing

Add To CollectionCollection

Comments

Devlog

More like thisRelated

Blitz3D V1.118 now available

Blitz3D » Devlog

Like10

292 days ago by Blitz Research
Share this post:
Share on BlueskyShare on TwitterShare on Facebook

Blitz3D V1.118 is now available!

This update contains a few minor tweaks that have been requested by SGD devs (including myself):

* You can now use /* and */ to comment out a multi-line block of text. These tokens must appear at the start of the lines they appear on to be recognized, unlike C++ where they can appear anywhere. Note that block comments are not yet handled by the syntax highlighter in the IDE so will look just like 'normal' code. Syntax highlighting will be added to the parser at some point in the future when I get enough spare time. (Hope I haven't ruined your day Dabzy).

* You can now use :Int, :Float and :Str instead of %, # and $ when declaring variables in dialect "modern". The :Str form might look a bit weird, but that's what Blitz3d already uses for casting eg: 'Local t$=Str(n)' so I stuck with it....

This release also fixes a bug in the new modern dialect where ':' was geting mistaken for a type tag declarator instead of a statement separator, eg: in 'RenderScene:Present' etc.

Bye!
Mark

SHA256 hash of Blitz3D-V1.118.zip:

eb5b07c3f2ccf5142ddf866c1c4caec5c4ee262b6a3ab0bcc718a397a822cc02

Files

Blitz3D-V1.118.zip 25 MB

Sep 04, 2024

Get Blitz3D

Download NowName your own price

Blitz3D

The classic Blitz3D compiler for PC.

Add Tool To Collection

Status

Released

Category

Tool

Author

Blitz Research

More posts

Blitz3D V1.117 now available!
Aug 19, 2024

Minor Blitz3D updates now up!
Jul 22, 2024

Blitz3Dx95-V1.109 for Windows 95 released!
Jun 24, 2024

Blitz3D-V1.114 now available and MORE!
Jun 18, 2024

Blitz3D-V1.113 now available!
Jun 04, 2024

Blitz3D V1.112 now available!
Apr 14, 2024

Blitz3D-V1.111 now available!
Apr 13, 2024

LibSGD Announcement
Feb 28, 2024

See all posts

Comments

Log in with itch.io to leave a comment.

AChristian30 days ago

With the flat earth videos on YouTube everyone is theorizing how everything should look if the earth was flat or not.

But in blitz3d a model of both could be made. Then a camera could be placed on the earth to see if the horizon and aircraft and boats look more similar on each model 😁

Reply

AChristian30 days ago

Hi

I used blitz3d a long time ago.

It had a limitation of the world being a certain size. Maybe the size of an int in units?

Has this limit been extended?

Thanks

Reply

Snoozy (the clown or idk)290 days ago

i may be dumb but i tried to use the new :str statement, it throws a “expecting end of file”

i wrote it like this :

variable:Str = “idk”

Reply

Snoozy (the clown or idk)290 days ago

btw please can you make it so that you can use arrays inside types

Reply

ocmar289 days ago(+1)

Type tFoo
Field tab[100]
End Type

Reply

Snoozy (the clown or idk)289 days ago

works!

thanks :]

Reply

Snoozy (the clown or idk)289 days ago

what about multi dimentional arrays ?

is it the same or not?

Reply

ocmar289 days ago

From Blit3D docs:

Since a recent Blitz update you can now do what are called 'blitz arrays'. These are very different to a Dim'd array, in the following ways:

They use square brackets [] instead of the normal round ones ().

You declare them like you do Local or Global variables, example: Local myArray[10]

They cannot be multi-dimensional, and cannot be resized.

They can be stored in Type objects.

They can be passed to functions.

But you can simulate a multidimensional array:

Const WIDTH = 10
Const HEIGHT = 10
Local tab[WIDTH * HEIGHT]
;set value to tab[5, 7]
Local x=5, y=7
tab[x + y * WIDTH] = 1234
;get value from tab[5, 7]
Local value = tab[x + y * WIDTH]
Print value

Reply

ocmar289 days ago (1 edit)

It has many limitations, but it can be useful in some situations

Reply

View more in thread

Blitz Research272 days ago

No, you're not dumb, well spotted, the new syntax only works for vars declared explicitly Local or Global, eg: 'Local tmp:Str ="Hello"'

I forgot you could also declare vars implicitly. I may fix this, but I'm actually tempted to remove 'implicit decls' like this from modern dialect completely.

Reply

Snoozy (the clown or idk)272 days ago

thanks for responding :)

Reply

dabzy1978291 days ago

[quote]

Hope I haven't ruined your day Dabzy

[/quote]

Nope, I'm sure I can shoe-horn the updates into Launchpad! ;) hehehe

Reply

gabdev100213291 days ago (1 edit)

bro everytime if i run the application it gives me this error

Reply

medi71291 days ago (3 edits)

Thanks, closer to C without pointer and without {}, is great to me.  Even with {} is good, but this is BASIC.

Blitz3D is going to be a  good looking BASIC, it is easy to read and easy to code . It is simple for those who do not have computer science education. It has few primitive types, it has array, has only function, and a user type that is loaded with doubly linked list. Can't be better than this. We can write thousands of useful programs, those that don't need more primitive types or OOP. Blitz3D samples and games and other simple BASIC software are the proof that light weight, relatively efficient programming software is possible with great results.

Reply

ocmar292 days ago

Thank you Mark, my dreams come true.

Reply

ocmar292 days ago

Btw, when I try to end the program in debug mode using the escape key, these 2 pieces of code work differently:

Dialect "modern"
Repeat
Until KeyHit(1)
/* comment */
End

Dialect "modern"
Repeat
Until KeyHit(1)
;/* comment */
End

Reply

Jayenkai291 days ago

"These tokens must appear at the start of the lines they appear on to be recognized"

The */ has to be at the start of the line.

Reply

ocmar291 days ago

No, I mean this case breaks the End command:

Dialect "modern"
Repeat
Until KeyHit(1)
/* comment */
End

And another example:

Dialect "modern"
Repeat
Until KeyHit(1)
/* comment */
Local i=0
For i=0 To 10
DebugLog(i)
Next
WaitKey()

In this case we will not get the results from the DebugLog function in the debugger. But when we remove the comment, the Debug Log function will show the results

Dialect "modern"
Repeat
Until KeyHit(1)
Local i=0
For i=0 To 10
DebugLog(i)
Next
WaitKey()

Reply

ocmar291 days ago (1 edit)

Oh, yes, you're right, sorry

Thanks

Reply

Blitz Research272 days ago

My bad, you should get an error if /* and */ are mismatched.

Reply

itch.io·View all by Blitz Research·Report
Blitz3D › Blog