Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Author
Message
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 4th Apr 2003 18:37
i know that Patch5 is a little way off yet, and this may seem presumtous.
however from what i gather Patch5 is basically finalising DBO, squishing main bugs, etc...

so most of what is being done was planned from before patch4 - which leaves path6 for our suggestions right?

right now what i'd like to see more than anything in patch6 is something i think alot of the more advanced coders in DB would also probably love to see...

i'd like to be able to pass types/arrays into and out of functions, but i don't mean just use them inside - being all preset...
what i mean is like this

... just a basic type ->

type MyType
a as float
b as integer
endtype



function MyFunction( ValueA as MyType, ValueB as MyType )
local Return as MyType
Return.A = ValueA.A * ValueB.A
Return.B = ValueA.B * ValueB.B
endfunction Return


and i'd also like to be able to access the data like you can in C as arrays...

function MyFunction( ValueA as MyType, ValueB as MyType )
local Return as MyType
Return[0] = ValueA[0] * ValueB[1]
Return[1] = ValueA[1] * ValueB[2]
endfunction Return


as this would give us better access with our types, because we choose the type position rather than the actual type name - which gives us alot of leverage when making larger type and multiple types for a single value.

because i mean if atleast we could just pass arrays
function MyFunction( ValueA(3) as float, ValueB(3) as float )

local dim Return(3) as float
Return(0) = ValueA(0) * ValueB(1)
Return(1) = ValueA(1) * ValueB(2)
endfunction Return(?)


i also think using the '?' symbol would be better for like just exporting all the data...
also perhaps saving short arrays like so

dim Vector({0.0,0.0,0.0}) as float

would make a Vector(3) array filling each of them with 0.0
if you made it only valid with single dimension arrays, with a max of say 8/16/32 entries - it would be good for short bursts of data into a single value

could then perhaps pass the data with the indirect symbol the other side like

VectorResult = MyFunction( Vector*, Vector2* )

just ideas for what i'd like to see, because with more flexible functions, types and arrays we can actually produce some far greater depth programs - especially due to DBpro's far easier style of code to C/C++
Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Fluffy Paul
23
Years of Service
User Offline
Joined: 16th Dec 2002
Location: United Kingdom
Posted: 4th Apr 2003 18:46
I'd like to see arrays within arrays, so that an array element could be an array in itself..

Ending a sentence with a French word is so passé
Beta1
23
Years of Service
User Offline
Joined: 28th Dec 2002
Location:
Posted: 4th Apr 2003 19:52
Kind of like Object(1).component(4).thingy... If so I'm all for that. At the moment I have

o(1).component1, o(1).component2 etc up to 5 and then have to repeat the code 5 times cos I cant just go o(X).component(Y)

Would be very very useful

Beta1
23
Years of Service
User Offline
Joined: 28th Dec 2002
Location:
Posted: 4th Apr 2003 19:55
failing that just allowing variables to be used in type references would be great

kind of like

y$=component

o(X).y$= blah blah blah.

I would like to see ravens request too - it would make DBP so much more elegant

rapscaLLion
23
Years of Service
User Offline
Joined: 29th Aug 2002
Location: Canada
Posted: 4th Apr 2003 20:03
I would like to see more support for transparency.
Ie- Setting the opacity of a model, anywere from 0% (invisible) to 100%(no transparency) and anywere in between.

Proper ghosting. It might just be my hardware, but in DBC, ghosted objects appeared as being 50% transparent. In DBPro, when ghosting is on, the object is transparent, but it brightens everything, as if it's an additive effect, if you know what I mean. I don't want that, I want simple transparency!

Alex Wanuch
aka rapscaLLion
Kousen Dev Progress >> Currently Working On Editors
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 4th Apr 2003 21:00
i think operating colours (including the transparency) in floats rather than bytes would be far better ...

so rgb(0,0,0) would becomes rgb(0.0,0.0,0.0)
and rgb(255,255,255) would become rgb(1.0,1.0,1.0)

it would allow darkbasic to go upto the 128bit colour that the GeForce FX cards can use, and any other colour range inbetween.

Radeon & GeForce4 Cards for example can use 48bit colour ... adding transparency as part of the colour would be a bonus

like RGB(1.0,1.0,1.0) or RGBA(1.0,1.0,1.0,0.0) - i mean as it stands i do this anywhere with a type for memblock images 32bit but would be good to give this property to object as well, after all this is an inherient property within DirectX itself when doing RGB statements

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Terabyte
23
Years of Service
User Offline
Joined: 28th Dec 2002
Location: UK
Posted: 4th Apr 2003 23:01
I wouldnt mind a particles visible expresion. e.g.

Return Value=Particles Visible()

set object camera orientation - you cant tell it which camera you want the object set to !!!!

I have a word of advice...
..don't piss on an electric fence!
Kangaroo2
23
Years of Service
User Offline
Joined: 26th Sep 2002
Location: United Kingdom
Posted: 4th Apr 2003 23:20
The advanced variable support certainly sounds useful

And as for Raps' suggestion yep, I made the same on a few months back, it seems a very silly oversight, and easy to implement. Especially as you can set the alpha of sprites and they are now handled as 3d, so it just a case of slightly editing code I guess

Coming Soon! Kangaroo2 Studio... wait and quiver with anticipation! lol
[email protected] - http://www.kangaroo2.com - If the apocalypse comes, email me
Impulse
23
Years of Service
User Offline
Joined: 31st Mar 2003
Location:
Posted: 5th Apr 2003 04:25
Fluffy, I think what your looking for is multidimensional arrays.

Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 00:09
there a chance that support for standard data types to be used as values...
so like


means that 128 is printed
perhaps not for anything cept novelty really - but would be useful in some cases, right now i'm using contants with the pre 'i' for them, suit me well i guess ... would prefer to be able to use the value.

i mean you can use then right now on thier own, compiles fine - cept they only ever produce 0

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 6th Apr 2003 00:42
I think that transparency should be done by percentage, as that is easier.

Arrays in types are desperately needed.

The lighting needs serious fixing as well. For some strange reason, the objects are GREY by default! - WTF is that about? - They should be white. Also, surfaces are not lit gradually as they should be, one minute they are black, the WHOLE POLYGON looks as if it is fully lit, even if the light only just touches it. It makes objects look horrible. It is like those blurred images - I swear that Lee needs to take more sanity checks.

I also propose a system to allow for far more flexibility within the 3D engine:

Basically it works like this: Everything is an object except BSPs. Sprites, Terrains and Particles are all objects (Matrixes would be removed and replaced with more flexible terrains)

This means that you can use all the object commands on them (bump mapping, reflection shading etc.)

However, each special type has certain commands which can be applied to it, ie. the terrain commands can all be used, but they only work with Terrain Objects.

The texturing system would be changed as well, textures would be a seperate type accessed by an index like objects:

PREPARE TEXTURE textureno,imageno

Then we set properties for it like so:

SET TEXTURE REFLECTION textureno,reflection_shading_flag
SET TEXTURE ALPHA textureno,alpha_percentage

Then the texture is either applied to the whole object or to to individual surfaces or limbs:

TEXTURE OBJECT textureno,object
TEXTURE SURFACE textureno,object,surface_index
TEXTURE LIMB textureno,object,limb_index

In order to retain the simplicity of DB, quick "bypass" functions could also be introduced:

TEXTURE OBJECT WITH IMAGE object,image

Current Project: Retro Compo. Entry.
Dave J
Retired Moderator
23
Years of Service
User Offline
Joined: 11th Feb 2003
Location: Secret Military Pub, Down Under
Posted: 6th Apr 2003 01:36
And now for our Patch 7 wishlist...

"Computers are useless they can only give you answers."
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 02:27 Edited at: 6th Apr 2003 02:30
if you're gonna complain to someone about 3D aim them at Mike, i mean that is his job

however the objects are standard rgb(128,128,128) - DirectX automatically assigns this colour as standard, but it's been a standard colour for new objects for years. Probably because its the most flexiable to show lighting on
however the lighting probably should be sorted out if its doing wierd things like that for you ... i mean i've been using mostly shaders for everything recently getting a far better grip with thier development for a huge project i'm going to be working on come Monday.

i think the current setup of the engine is pretty flexible on the 3D end of things - with the exception of alpha being there for models and colours, meaning you have to create your own RGBA type and values which i wouldn't mind seeing this added to

#typefunction RGBA as dword = (&byte<<24)+(&byte<<16)+(&byte<<8)+(&byte)

then you type say ... RGBA(0,255,255,255)
now you'll have a DWORD RGBA value

i think that would help us cope better without being able to pass functions

[edit-]

i know this can easily be achieved with a function, but i'm knacked and can't think of a better use than that ... i'm sure i could given time

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Andy Igoe
23
Years of Service
User Offline
Joined: 6th Oct 2002
Location: United Kingdom
Posted: 6th Apr 2003 05:12
Quote: "I'd like to see arrays within arrays, so that an array element could be an array in itself.."


You are reffering to multi-dimension arrays? They have been in DB since the first release



Pneumatic Dryll, Outrageous epic cleric of EQ/Xev
God made the world in 7 days, but we're still waiting for the patch.
Daz
23
Years of Service
User Offline
Joined: 26th Dec 2002
Location: United Kingdom
Posted: 6th Apr 2003 14:31 Edited at: 6th Apr 2003 14:32
How about being able to set the seed value in the RND() command?

e.g. RND(1-10), so you dont have to have it from 0 to whatever number you want it to go to.


Or has this already been done?

*Crawls in corner and looks n00bish*



DarkBASIC Professional is the best programming utility.
8/10 Housewives agree!
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 14:54
yeah i'd like to see that too daz... cause right now the only way to achieve that is like this

result = rnd(20)+10
which would be 10-30

so you put in the brackets the number of values you need to be random then add the offset... so for what you want i'd be

result = inc rnd(9)

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
MrTAToad
23
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 6th Apr 2003 18:43
I'll see what C can do...

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins - oh my, yes!
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 18:59
i thought of a better use for the type function



oki perhaps not that much better of an example but a lil lol

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
MrTAToad
23
Years of Service
User Offline
Joined: 26th Aug 2002
Location: United Kingdom
Posted: 6th Apr 2003 19:03
The routine I've got going works well...

Good news everyone! I really am THAT good...
http://www.nickk.nildram.co.uk/ for great plug-ins - oh my, yes!
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 6th Apr 2003 19:20
@Raven

If DBPro developed the way you are suggesting then Perl programmers would find it challenging to learn!

Current Project: Retro Compo. Entry.
Fluffy Paul
23
Years of Service
User Offline
Joined: 16th Dec 2002
Location: United Kingdom
Posted: 6th Apr 2003 20:35
OK, to those who think I'm talking about multidimensional arrays:

I would like to make an array that behaves like a multidimensional array but each element in the array can have a different number of sub-elements.
Ideally I'd like to be able to declare types that can include arrays in them.
e.g.


this way I can put all my RTS units in one array even though they have a different number of guns or cargo holds or whatever. The way I do things at the minute is treat everything like a database. No duplicate data, just a reference to another table (or array in this case). This means I can describe all my weapons in one array and then I make another array like this:
dim loadouts(n,w,2) where n is the number of different weapon configurations, w is the number of weapons in the game and 2 is two flags for whether that weapon is present in that particular loadout pattern and the second is what limb that wepon maps to (so the bullets can come out of the right part of the model).

I suppose my problem is that I'm used to OO programming when I can just make an object that has a 3D model and an array of weapons as its internal attributes, rather as data that is external to the object and needs cross referencing. Mapping an unspecified number of external attributes to a single entity in the game is just tricky in a non-OO language. It's not impossible, I'd just rather do it differently than how I have to in this situation.

Ending a sentence with a French word is so passé
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 20:36
what does DarkBasic Pro have to do with Perl?!?
what do i care if its harder for them to learn?
personally i'm trying to get some more C style extensions added to allow for greater end flexiblity when working around more complex programs.

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Shadow Robert
23
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 6th Apr 2003 21:12
i think i get it...
so you'd like this



however i'd prefer this



and that could save an entire mesh into an single object
i've even added an extra array in the header there for saving the string for the texture name
that way you can make a single function to make an object including texture from a type file ... and if they added something like

save type variable to file MyObject, "MyObject.x"

i mean all it'd have to do is save all the data within the type, wouldn't have to save it in any particular way as such - but even still if we could pass the types into functions it'd give us so much fexibility there you'd be amazed at what you could achieve

Tsu'va Oni Ni Jyuuko Fiori Sei Tau!
One block follows the suit ... the whole suit of blocks is the path ... what have you found?
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 6th Apr 2003 21:18
"what does DarkBasic Pro have to do with Perl?!?
what do i care if its harder for them to learn?"

The whole point of DBP is that it makes game development easy. Yes there is something to be said for maintaining flexibility, but the implementations you suggested are more akin to Blitz.

Current Project: Retro Compo. Entry.
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 6th Apr 2003 21:19
As your code showed, the first snippet was much easier and a lot less work

Current Project: Retro Compo. Entry.
Wayne
23
Years of Service
User Offline
Joined: 3rd Jan 2003
Location:
Posted: 6th Apr 2003 22:44
I would like to see more jelly.

Never stop in the perseverance of knowledge.
The Key to life's secrets is on that road.
Rob K
Retired Moderator
23
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 7th Apr 2003 00:27
Definately, SquidgyTypes are in for Patch 7.

Current Project: Retro Compo. Entry.
CloseToPerfect
23
Years of Service
User Offline
Joined: 20th Dec 2002
Location: United States
Posted: 7th Apr 2003 02:55
Fluffy I know what you want and it would be useful, Euphoria has array in array and it's wonderful in programming. Don't hold your breath for seeing this in DBP.

Galiem
23
Years of Service
User Offline
Joined: 27th Nov 2002
Location: United States
Posted: 8th Apr 2003 22:02 Edited at: 8th Apr 2003 22:02
http://www.darkbasicpro.com/apollo/view.php?t=8332&b=1

Outside of what's in that thread, I would love to see global variable declarations. Either as types, or in a more straightforward way even.

Arrays within arrays could be nice, but what would be better is a more stable system for getting filenames from a $string variable, instead of coding it in... Seems to work about 2/3 of the time. The global variables thing would most likely fix the other 1/3 for me though lol

I would also like to see DLL callbacks be made possible in the API.

Even better would be single command or keyword API access, with parameters coming from manually defined arrays (menu name, menu item pointer, etc)

Soyuz
23
Years of Service
User Offline
Joined: 17th Dec 2002
Location:
Posted: 9th Apr 2003 04:40
Transparency from ALPHA CHANNELS !!!

Transparency from ALPHA CHANNELS !!!

Transparency from ALPHA CHANNELS !!!

That's all I want right now.

Oh and anything that generally continues to make game programming easier.

Login to post a reply

Server time is: 2026-07-10 19:48:45
Your offset time is: 2026-07-10 19:48:45