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.

Newcomers DBPro Corner / Top ten resources for new DBPRO users who are working solo...

Author
Message
Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 12th Jul 2011 03:37 Edited at: 13th Sep 2011 12:43
Hi, my name is Chris and I am posting you a link to one of my DBPRO articles that may be of interest to you.

If this is your first time here or if you have just recently joined the community then welcome aboard.

If you have been around for a while but struggle to build enough confidence to complete your project then the following information may be of good use for you.

After reading through all of the article and its linked articles by various authors, you will become a new man/woman; you will become a millionaire and you will get to eat ice cream all day long. Ok, that was one of my random moments where I get emotional pleasure out of writing something completely stupid on purpose.



Now seriously, here are the 10 top sources of information and tools to help you get started with your project, particularly if you are working solo... Lets go.



Here are some more of my documents that may interest you:

Memblocks
Arrays
Data Typees and Principles
General ASCII keyboard input codes
Userful generic shortcut keys
Smooth object & camera movement and value changes
XML
Referencing an array by a name rather than a number
Game Templates[WIP]
Game Template Hello World Tutorial[WIP]

Eduardo Switzerhans
13
Years of Service
User Offline
Joined: 28th Dec 2010
Location:
Posted: 13th Jul 2011 15:05
Very good read here, Thanks for the article.
Webber
13
Years of Service
User Offline
Joined: 27th May 2011
Location:
Posted: 18th Jul 2011 09:13
Love the funny code snippet.
Awesome article.
Now I can take over the world.


I like games, and stuff.
Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 23rd Jul 2011 05:11
Thank you Webber; stay tuned as there is more coming soon.

Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 5th Sep 2011 22:10
New content has been released in the new memblock reference section.

If you are new to memblocks or have not been able to grasp them before, visit the guide.



zenassem
21
Years of Service
User Offline
Joined: 10th Mar 2003
Location: Long Island, NY
Posted: 6th Sep 2011 03:01
May I suggest or request that the size of the font for [Source Code] be reduced a bit.

I haven't checked all of them but as an example your "Referencing an array by name..." article. The font for the source code is uncomfortably large IMHO.

Your signature has been erased by a mod please reduce it to 600 x 120.
Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 9th Sep 2011 17:35
Thanks Zenassem, I have dropped the size a bit and will be waiting for further feedback.

For reference, could you tell me what resolution your monitor is set at and how the rest of the text is?

The formatting, highlighting and CSS is a major work in progress, I am currently focusing on delivering the content.

Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 1st Nov 2011 22:03
30 day bump to prevent the thread from being locked.

Somarl
13
Years of Service
User Offline
Joined: 11th Feb 2011
Location: UK
Posted: 1st Nov 2011 22:58
Quote: "if ( Helmet and IS_CONSUMABLE ) = 0 then print "The helmet is not consumable""


That quote in your memblocks reference guide reminds me of Anchormans "The human torch was denied a bankloan." Its just random and a bit out there. Love it.

Regarding memblocks as even with that guide and my books i still dont really get them. Is it just a way to store things in ram instead of accessing everything from the harddrive (which of course would be faster). So making a sound from memblock would basically mean, load this sound into ram for a bit because it will be used often. If so then are memblocks really necessary for SSD's, as some of them are pretty fast, the PCI ones are probably the future but we will see. They are massive and very fast.
If i am reading all this wrong then forgive me but i have yet to come across a way that explains the use of memblocks in a way i understand.
Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 3rd Nov 2011 21:45
Memblocks provide fast access to a series of bytes. These bytes can store numbers and letters.

Because of their speed, memblock commands are better for data manipulation than arrays and string lists. By data manipulation, I mean object, sound, bitmap, image and file manipulation.

In the diagrams in my articles, they show you what kind of information is stored in each section of the memblocks. You just use that information for manipulation, special effects and for converting one format to another.

However, these days, there are plugins that deal with such manipulation more easily; but when you need extra control, memblocks come in handy. Another use for memblocks is for sending a series of related commands over a network in one shot, and for packing file data into RAM for quick direct access when needed.

For storing variables, arrays are best because they handle alot of the data management for you. But with memblocks, you must take more responsibilities. I rearly use memblocks; but when I do, it is usually because using an array for something works too slowly.

Somarl
13
Years of Service
User Offline
Joined: 11th Feb 2011
Location: UK
Posted: 3rd Nov 2011 23:19
What kind of manipulation? I have often heard memblocks can easily manipulate data but i was not sure how or why you would do this. Is it like to make a sound longer or something? Or change where an object is positioned?
Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 6th Nov 2011 13:32
Yes, changing how bitmaps look and how sounds sound. It is also a low level method for performing actions that cannot be performed with regular functions; such as making a bitmap brighter, or removing a number of vertices from a 3d limb.

The main thing to understand is that you are dealing more closely with raw data in a series of bytes. There is almost no middle man involved with getting what you want, you are in full control and you see all the details that define what you are manipulating. With native bitmap, image and 3d commands, you are limited to those commands and your imagination. With memblocks you get to do more.

You do not need to use them to create a game. They are there for you to perform what you cannot perform with native functions; but there are so many plugins now, most problems are solved for you. It is always best to keep things simple in terms of keeping code easy to understand; if that is your goal.

There are also memory banks in Matrix1; similar concept but more geared towards manipulating information, EG: strings and files. Each bank could be compared to a file, and its content. Stuff like that can be used for creating savedgames and your own file formats.

enderleit
17
Years of Service
User Offline
Joined: 30th May 2007
Location: Denmark
Posted: 12th Nov 2011 13:22 Edited at: 12th Nov 2011 13:23
I generally use direct pixel access for image manipulation.
What is your take on the pros/cons and speed vs using memblocks in a case like this?



I'm a pretty experienced programmer, but I don't mind learning more about something, or just learning something new.

TheComet
17
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 12th Nov 2011 15:15


That's interesting, I didn't know DBP had pointer operators... Can this be used on normal variables too like in C?




TheComet

enderleit
17
Years of Service
User Offline
Joined: 30th May 2007
Location: Denmark
Posted: 12th Nov 2011 17:58 Edited at: 12th Nov 2011 18:17
I'll have to check on that...

But the pixels pointer functions are only for accessing the memory of bitmaps.

I do believe though that you can reserve memory... There is a command for that.

EDIT:

Yes you can. This from the Variable principles of the DBPro help files:
Quote: "You can use the value of a variable to specify, read and write the contents of an address by using the "*" indirect symbol. This is useful for obtaining areas of memory you wish to read from or write to and control the pointer into this memory using a standard variable."




And a small test I just made:


EDIT2:
Just re-read your question, and...
NO, you can't create variable references like you do in C/C++, but as shown above you can Allocate memory and access it using a pointer.

There might be something in matrix1utils that allows you to do that. IanM?
I know you can do function-pointers with it.

Chris Tate
DBPro Master
16
Years of Service
User Offline
Joined: 29th Aug 2008
Location: London, England
Posted: 12th Nov 2011 19:28 Edited at: 12th Nov 2011 19:29
Quote: "I generally use direct pixel access for image manipulation.
What is your take on the pros/cons and speed vs using memblocks in a case like this?"


I have not compared the two methods because I do not use bitmap pointers, so I cannot say for sure whether bitmap memory manipulation is faster than bitmap memblock manipulation.

I can only assume that having to convert a bitmap to a memblock and back again is slower; but whether changing the data in memblocks is slower or the same speed as changing memory through pointers is unknown to me.

Login to post a reply

Server time is: 2024-11-24 00:40:31
Your offset time is: 2024-11-24 00:40:31