generic image
Processing...
  • Games
  • Catalog
  • Develop
  • Robux
  • Search in Players
  • Search in Games
  • Search in Catalog
  • Search in Groups
  • Search in Library
  • Log In
  • Sign Up
  • Games
  • Catalog
  • Develop
  • Robux
   
ROBLOX Forum » Game Creation and Development » Scripters
Home Search
 

Re: I'm working on a 3D library for the TI-83/84 calculators.

Previous Thread :: Next Thread 
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
22 Nov 2013 08:23 PM
It's for creating 3D games.
Basically, it's a library, you include it, and it allows you to draw 3D points. It will also have a couple built-in shapes, like rectangles and rectangular prisms.

Let's say you're using Mimas, which is an amazing Assembly IDE for the calcs, and you want to use it. All you need to do is add it as a library, then you can start using 3D stuffs.

So far, you can do this after including the file:

-----------------------------------------------------------
ORG UserMem-2
DB $BB, $6D
START:
LD A, 0
LD (_pixler_cube_x), a
LD A, 0
LD (_pixler_cube_y), a
LD A, 0
LD (_pixler_cube_z), a

LD A, 10
LD (_pixler_cube_width), A
LD A, 10
LD (_pixler_cube_depth), A
LD A, 10
LD (_pixler_cube_height), A

CALL DefineCube

BCALL GrBufClr
CALL DisplayCube
BCALL GrBufCpy
RET
-----------------------------------------------------------

This will create a cube starting at point (0,0,0) with dimensions 10x10x10.

This isn't isometric 3D. This is actual 3D. If you create a cube like above and move it around the center, the cube will appear to curve towards the center, like real life, how things curve towards the center of your vision. And increasing the depth makes it appear smaller. I did define a subroutine called "DefinePoint" and "DefinePointISO". You can call on "DefinePointISO" if you really want to create an isometric point.

After I finish the library, I will also attempt to build a copy of it for Doors CS for optimization. I'm currently building it with the default shell that comes with the calculators ("Asm("). It runs at a good speed, but if I were to change to the Doors CS shell, it should run faster.

Anyways, yeah. You will be able to create 3D stuff in it.

I will post more of this on Cemetech if anyone cares to try it out.
Report Abuse
AndroidKitKat is not online. AndroidKitKat
Joined: 21 Sep 2013
Total Posts: 1525
22 Nov 2013 08:27 PM
Curve towards the center? xD
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
22 Nov 2013 08:31 PM
"Curve towards the center? xD"

Yes? Was there some sort of innuendo with what I said?
Maybe the word "curve" wasn't the best explanation, since these are 3D points and have no lines between them to view curvature. The lines are drawn as straight lines connecting the points after all the calculations have already been done.

There's really no other better word for it. It "bends" towards the center?

As you move it around the center of the screen, the points tend towards the center based on their depth. Greater the depth, the closer to the center. This creates a pretty darn good 3D effect.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
22 Nov 2013 08:33 PM
Here's a demonstrations:
/ZeglI6U.gif

Note that it does not flicker and runs smoother on the actual calculator than the emulator that I recorded that GIF on
Report Abuse
AndroidKitKat is not online. AndroidKitKat
Joined: 21 Sep 2013
Total Posts: 1525
22 Nov 2013 08:53 PM
Pretty good, but it'd be way better if it used 2-bit grayscale with filling instead of wireframe and if you used a vertex-based rendering.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
22 Nov 2013 09:47 PM
>"Pretty good, but it'd be way better if it used 2-bit grayscale with filling instead of wireframe and if you used a vertex-based rendering."

Yeah, like this could totally be done on the TI-83/84.
Report Abuse
Charl3s7 is not online. Charl3s7
Joined: 07 Dec 2007
Total Posts: 4146
22 Nov 2013 10:40 PM
Uhh... why?
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
22 Nov 2013 10:55 PM
"Uhh... why?"

So you can make 3D games/apps for the calculator?
Why not?

Report Abuse
Charl3s7 is not online. Charl3s7
Joined: 07 Dec 2007
Total Posts: 4146
22 Nov 2013 11:47 PM
Because that's totally useless. Nobody buys a calculator to play games on it. You're wasting your time.
Report Abuse
cntkillme is not online. cntkillme
Joined: 07 Apr 2008
Total Posts: 44956
23 Nov 2013 12:11 AM
^ He actually has a point
Report Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3179
23 Nov 2013 12:12 AM
If it done for enjoyment, then it isn't a waste of time. I make games and programs on my TI-84+ all the time, and other people rarely use those, yet I don't really care. It is good for learning too, even if it is just written in TI-Basic, because using TI-Basic can teach the importance of fast and efficient code. For example, I wrote a snake game program, and it took exponentially longer to calculate the movement with each extra pixel added onto it's length when I was using a list to hold coordinates, and I optimized it to run at a smooth frame rate, only lagging when the tail segment ended by storing segment direction and length values in the list instead.
Report Abuse
XML1 is not online. XML1
Joined: 26 Jun 2013
Total Posts: 95
23 Nov 2013 12:28 AM
It's good practice and can be applied throughout game programming,but it makes me wonder what fps you would get, and how it would look. The game would flash so much it would be unplayable.
Report Abuse
Charl3s7 is not online. Charl3s7
Joined: 07 Dec 2007
Total Posts: 4146
23 Nov 2013 01:11 AM
It'd be a better use of time to make something that's actually worth making. There's much more learning potential. You can worry about the importance of optimized code in other languages. BASIC languages should be obsolete by now.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 01:13 AM
@Charl3s7

"Because that's totally useless. Nobody buys a calculator to play games on it. You're wasting your time."

Your first sentence, second sentence, and third sentence, are all independent of each other and none of them support each other.

"Because that's totally useless."
You never explain why it's useless.

"Nobody buy a calculator to play games on it."
You make this statement, but don't explain how it has anything to do with it being useless. Plenty of people don't buy their calculator to play games on it, but plenty of people still play games on their calculator.

"You're wasting your time."
You then make this statement, but fail to explain how it relates to it being useless or nobody buying a calculator to play games. Even if it was useless, that still wouldn't make it a waste of time, because it would still be a fun and learning experience for myself.


@MettaurSp
"If it done for enjoyment, then it isn't a waste of time. I make games and programs on my TI-84+ all the time, and other people rarely use those, yet I don't really care. "

Same with me. I write z80 Assembly games on my calc all the time. Not many people play them, but I do it for fun.

Also, some apps I make are actually useful for school. I've written a periodic table that you can scroll around and view for chem. I've written a program that returns information on whatever element is stored in Ans (such as, if you type "CO" then type in Asm(prgmELEMENTS) it will return info on it, such as molar mass). I've also written a program that creates factor trees from numbers.

"even if it is just written in TI-Basic, because using TI-Basic can teach the importance of fast and efficient code."

Actually, it's written in z80 Assembly.
I tried writing a 3D engine in TI-BASIC.
TI-BASIC is way too slow for something like this.
I would recommend downloading Mimas.
It's an on-calc assembler for the TI-83s and TI-84s.
It's a pretty amazing IDE and will compile your code for all major shells.
I also purchased the TI-Keyboard to plug into my calc and type up Assembly code when I'm away from my laptop.
It's pretty beast.


@XML1
"it makes me wonder what fps you would get, and how it would look"
There's already an FPS. It's called zDoom. It runs pretty great.

"The game would flash so much it would be unplayable."
Um, why would it flash?
The TI calcs have double-buffered graphics.
When writing z80 Assembly code, there's absolutely zero flash because the graphics are double-buffered.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 01:14 AM
"BASIC languages should be obsolete by now."

It's not BASIC, ya dip. It's z80 Assembly.
I provided an example code in the first post.
Report Abuse
Oysi is not online. Oysi
Joined: 06 Jul 2009
Total Posts: 9058
23 Nov 2013 01:17 AM
[ Content Deleted ]
Report Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3179
23 Nov 2013 01:18 AM
I wasn't really referring to your 3D rendering code, I was referring to the stuff I make o3o All I really made for school was a factoring program, a schedule so I won't have to constantly take out my planner (also includes a battery meter using some ASM code I found online), and a couple other things. I should probably start to get into Z80 so I can increase the quality of programs I make.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 01:23 AM
"I should probably start to get into Z80 so I can increase the quality of programs I make."

I could help you, if you want.
z80 Assembly is one of my favorite languages.
I use it all the time.
Report Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3179
23 Nov 2013 01:29 AM
Okay, I already know some of the basics of Assembly. I know what opcodes are and how to use some of them, registers, strings (sorta), bytes (sorta), labels, and some framework code for NAsm.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 02:07 AM
Meh, I don't use Nasm.
I mostly use ClrHome for writing z80 Asm code on my PC or Mimas for writing it on my calc.

I've used TASM before to write 16bit Windows Assembly and z80 Assembly.
But overall, I prefer ClrHome, because you can easily just select "build" then "8xp" and it builds it directly to a calc file, and you don't have to go through the extra step of packaging it with devpack8x or whatever it's called. Also, I like it because it's online so it's easily accessible and I can use it on any device without installation.

ClrHome:
http://www.clrhome.org/asm

Mimas:
http://www.ticalc.org/archives/files/fileinfo/431/43140.html
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 02:14 AM
Hey, I just thought of a new project.
I'm going to attempt to port a z80 Assembler to Chrome OS.
Chrome OS doesn't have any z80 Assemblers for it yet.
Since Chrome OS supports native applications now, it shouldn't be too difficult to make a port, at least, I hope not.
Report Abuse
Radioaktiivinen is not online. Radioaktiivinen
Joined: 25 Apr 2009
Total Posts: 18629
23 Nov 2013 05:59 AM
Why would you make 3D games on a calculator when 2D is infinitely more scalable?
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 07:37 AM
@Radio

Why would you make a 3D game on any system?
Report Abuse
digpoe is not online. digpoe
Joined: 02 Nov 2008
Total Posts: 9092
23 Nov 2013 07:42 AM
Have fun with 3D Lighting, heh.
Report Abuse
FrenchWeasel is not online. FrenchWeasel
Joined: 11 Jun 2013
Total Posts: 343
23 Nov 2013 08:29 AM
It's just wireframe.
It's completely pointless to even attempt to fill the shapes with a 1-bit screen.
Report Abuse
Previous Thread :: Next Thread 
Page 1 of 1
 
 
ROBLOX Forum » Game Creation and Development » Scripters
   
 
   
  • About Us
  • Jobs
  • Blog
  • Parents
  • Help
  • Terms
  • Privacy

©2017 Roblox Corporation. Roblox, the Roblox logo, Robux, Bloxy, and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.



Progress
Starting Roblox...
Connecting to Players...
R R

Roblox is now loading. Get ready to play!

R R

You're moments away from getting into the game!

Click here for help

Check Remember my choice and click Launch Application in the dialog box above to join games faster in the future!

Gameplay sponsored by:
Loading 0% - Starting game...
Get more with Builders Club! Join Builders Club
Choose Your Avatar
I have an account
generic image