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.

DarkBASIC Discussion / Dark Noob Games HQ

Author
Message
Darkzombies
13
Years of Service
User Offline
Joined: 25th Dec 2010
Location: In multiple tabs, most likely youtube.
Posted: 25th Aug 2012 10:12
Quote: "Hello guys, how long has it been? I can't even find my last post -.-

But anyways, today I had the wonderful idea of returning in style.

(ยด・ω・`)

P.S. Please consider my absence a trip to hone my abilities and find my inner self."


Did no one see my return? O__o

-------------------------------------------------------------
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 25th Aug 2012 18:20
Sorry DZ, good to have you back.
Did you bring us back any candy?

Shh... you're pretty.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 25th Aug 2012 20:38 Edited at: 7th Feb 2014 03:28
Quote: "So where is everyone at now? I'm a bit confused about what version of the code is being used."

I tried to combine Latch's new farm with the last submission by Fluffy, but it gave me a strange error: 'New mesh has too many polygons at line 825.' There is no line 825. I can see at least some of the farm in the background at the CLI.


It would be my preference to move forward with this code and patch BN2's into it, as the collision is pretty good, even inside the buildings. The alien ships are in it too, as well as the inanimate aliens moving toward the center of the map.


Hi Darkzombies

So many games to code.....so little time.

Attachments

Login to view attachments
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 25th Aug 2012 20:53
Quote: "There is no line 825."


In my experience, this means there is an error in an #included file.

Also, welcome back DarkZombies! Sorry I missed the post the first time.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 25th Aug 2012 20:57
The error is related to setting up the farm object with Coldet. When I remmed out this line, it loaded and ran fine.

So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 25th Aug 2012 21:28
Quote: "The error is related to setting up the farm object with Coldet. When I remmed out this line, it loaded and ran fine."

It has to do with converting an object to a mesh. It's a DBC problem.

Well, that solves a debate I was having with myself on whether or not to change certain aspects of the farm model. I'll have no choice but to separate the buildings and ground into individual objects. That's going to change the collision code.

and this function:



It's really heavy on the collision checks. There's what seems like 12 or 13 possible collision checks - and that would be per iteration, per entity. That's too much overhead.

At any rate, in terms of redesigning the farm yet again, do you guys want openings in the buildings? That means creating at least an interior shell for the house and the farm, punching holes in the house, farm, and stable, adding backs to the doors and windows to the house or punching holes in the place of windows - or creating a completely different house, and re-UV mapping and texturing the whole lot.

That means more polygons ultimately, and some time to get it all done. There may be alternatives to having physical entrances:

* a building obscured by smoke and fire - can't really tell how the alien is entering or exiting
* beam the alien in and out
* have the alien appear to dig under the building
* blow up the building either by repositioning all of the faces or having a generic explosion effect.

@LBFN
Seems like you're really having trouble with the animation! DBC can load 3DS files directly (which I forgot!) so you don't actually have to convert them. The problem is with the exporter from the 3d modeling program. I know Blender and Anim8or do not export animation with 3Ds and all of the joints end up at (0,0,0).

Can you animate an X file however you would normally do it for DBPro (but use limb animation - maybe a version with directX 8 and 9) and post a copy of that file? I'll see If I can convert it to being usable in DBC.

Enjoy your day.
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 25th Aug 2012 22:00 Edited at: 25th Aug 2012 22:06
We will probably need latch's help debugging that then.
[EDIT]
Looks like he replied while typing this whole thing up


Report for the shooting system:

The system is more or less done.

It requires:
Memblocks: 3+however many different models for bullets you use (probably won't be too necessary but just in case).
Objects: Scalable. Max per shot is 2 (bullet and trail) with an extra one for the hit mark (I have a function that will place and orient that correctly that we can use unless someone has a better method).
Images: Scalable. Every bullet object requires a texture. Also every Bullet Trail requires a texture. In addition there are images needed for various types of bullet holes (textured onto square plains) and (this part still under development) for different textures for muzzle flashes.

Summary of package thus far:
The system allows for firing "bullets" from one object in any direction. A bullet can be an object that is moving or it can be a ray (non-rendered bullet that occurs instantly and then is deleted). Any bullet (whether it has an object or not) can have a trail (a cylinder with negative scale) that can be any length and size desired. This trail must be textured and can be used for things like: smoke from the back of a rocket, effects for bullet streams, etc. Every unique object is stored as a memblock and then made into an object at the time of creation.

Collision is done using rays. Before a move, the ray endpoints are calculated and collision is checked with all objects. It is assumed that they are already updated with ColDet. If there is a collision, the bullet is deleted and the hit object number is stored, along with the position of the hit point and normal data of the hit triangle.

An additional function is included that will create the hit mark. This is a plain (created from a pre-loaded object in a memblock) textured with the designated image.

The structure is this:
You have maxBullets(.) worth of bullets to create. Each bullet has 4 properties:
0 - Alive flag (-1 for scheduled for deletion, 0 for inactive, and 1 for active)
1 - That bullet's assigned bullet type
2 - (scheduled for possible removal) Reference to the object for the bullet
3 - Distance that the bullet has traveled (should not be manipulated)

Each Bullet Type has 5 properties:
1 - Bullet Speed
2 - Bullet Power (allowing some to be stronger than others)
3 - Range (maximum distance allowed to travel)
4 - Bullet Effect Number
5 - Hit Effect Number

Each Bullet Effect has 7 properties:
1 - Visible (Boolean defining whether or not to render the bullet object)
2 - Trail Length (leave at 0 to have no trail created)
3 - Trail Style (the image used for the trail)
4 - Ghost (1 or 0 to determine if the bullet should be ghosted)(currently not implemented yet)
5 - Bullet Texture Number
6 - Bullet Object Number
7 - Trail Cross sectional Size (allowing for fat trails for smoke and such or thin ones for rifle shots)

Each Hit Effect has 2 Properties:
1 - Image Number
2 - Size of the hit mark.
*NOTE* I plan to expand this section to allow for explosion type hit marks, rather than just bullet marks

(*The next section is not yet implemented but the framework is there so it's included for completeness)
A shot effect is what happens to the gun when fired. This can be a muzzle flash, kickback (the gun moving back after each shot), both, or neither (if you opt not to have a shot effect). This would likely be assigned to the gun and not the bullets.

Each shot effect has 4 properties:
1 - Kickback distance to travel
2 - Kickback speed
3 - Muzzle flash size
4 - Muzzle flash img number

Note that all image and bullet numbers are index, rather than absolute image numbers. All media is loaded by the system and the indexes stored are based off of offsets from a given start point (so that it can be easily set up to run within any range of values for objects, images, and memblocks).

Bullets also their positions and headings (in unit vector form) stored in arrays for access, but they should not normally be manipulated manually.

The system has 3 arrays that return various data of hit information:

1. ShotHitObject(10) - For a maximum of 10 hits per cycle, stores the object number of a hit object, referenced by the hit number. Additionally, in slot 0, the total number of hits is stored.
2. ShotHitPoints#(10,3) - For a maximum of 10 hits per cycle, stores the position data of the collision point, referenced by the hit number.
3. ShotHitNormal#(10,3) - For a maximum of 10 hits per cycle, stores the normal data of the triangle that was hit, referenced by the hit number.

All three of these arrays are EMPTIED every time the main function is called. Thus, after calling the main function, you should check ShotHitObject(0) and, if greater than 0, scan through with a FOR/NEXT loop and take action for each hit.

*NOTE* 10 was chosen arbitrarily as it doesn't seem like there is likely to be more than 10 bullets colliding at the exact same time.


All media for the system is loaded in in the initialization function.

To run the function, you must call the setup subroutines (initializes some arrays and serves as a good place for entering in the data for the various bullet types). This will call the initialization function. Then you just need to drop the main function into the programs main loop and make calls to various other functions as necessary (creation of a bullet and creation of a hitmark). Deletion and collision detection is handled by the main function.

What I need for completion:

1. Final vote on how to aim the bullet. If it will be done by placing limbs on each side of the gun's barrel, then I need to know limb numbers from whoever is managing the model. If, instead, we opt to use the camera's orientation (assuming the player will always be aiming in the direction the camera is), then I need to know that.

2. If shot effects are desired, it might be easiest if the manager of the gun places a limb right at the end of the barrel (could be the same one as mentioned above), then the system could place the shot effect at that limb's position. If they aren't desired, then no big deal.

Let me know of any thoughts, opinions, or critiques. It does occur to me that instead of storing objects as mesh blocks (which requires converting from object to mesh to memblock), I could just cut out memblocks entirely and use meshes, cutting down the time to create the object by 1 command (don't know if it is a particularly resource intensive command).

*Note: Since I have heard that dbc primitive objects are relatively high poly, I created a cylinder, sphere, and plain of unit size 1 for my object needs.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 25th Aug 2012 22:42
An option for aiming:

In 3rd person or first person:

If you have a targeting reticle attached to an object, you can project that in front of whatever you are aiming, whether it be the camera or a gun. That way, if a gun changes, you don't have to rely on limbs of the gun.

For an object with fixed aiming set the reticle as follows:

SET OBJECT ROTATION XYZ reticle : rem only needs to be done once

POSITION OBJECT reticle,gunx,guny,gunz
SET OBJECT TO OBJECT ORIENTATION reticle,gun
MOVE OBJECT reticle,some distance

The direction of your ray is from the gun to the reticle.

If pointing from the camera:
SET OBJECT ROTATION ZYX reticle
SET OBJECT TO CAMERA ORIENTATION reticle
MOVE OBJECT reticle, some distance

The direction of your ray is from the camera to reticle, or you could point the gun at the reticle and that would be the direction of your ray.

Though I'm not testing it, it should work.

Back to the limb idea, create a plain object, attach a plain limb to it. Texture the limb with a reticle. Offset the limb in the +Z direction. Position this object at the gun and set it to the guns orientation. The direction of the ray is from limb 0 to limb 1 of the reticle object.

Do the same for the camera for first person but make sure to reverse the order of rotation first.

Enjoy your day.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 26th Aug 2012 08:44
Quote: "At any rate, in terms of redesigning the farm yet again, do you guys want openings in the buildings? That means creating at least an interior shell for the house and the farm, punching holes in the house, farm, and stable, adding backs to the doors and windows to the house or punching holes in the place of windows - or creating a completely different house, and re-UV mapping and texturing the whole lot."

Sounds like a lot of work either way we go. I think it is unrealistic to expect we could have a destructible environment. I agree with making an interior shell to the buildings. I feel that we need to come together on what we want this game to entail and move forward together on it.

I have gotten pretty good at UV-mapping objects where I have textures to work with. I would be glad to try my hand with the farm if you could supply the textures (I can make some too, if needed).

Quote: "Can you animate an X file however you would normally do it for DBPro (but use limb animation - maybe a version with directX 8 and 9) and post a copy of that file? I'll see If I can convert it to being usable in DBC."

Thank you for the offer; yes I can. I remember how you jumped through hoops to make DBC animations work in the past. I've invested enough time trying to get DBCs animation to work and it's not going to happen anytime soon. I have the model (a robot) rigged and ready to animate. It shouldn't take much to complete it. I figure walk, shoot, impact, die1, die2 and idle would do it. I may try using either .x or .3ds objects to see what I can create via programming.

BN2: wow, you are a diligent fellow.

So many games to code.......so little time.

BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 26th Aug 2012 08:54
Quote: " BN2: wow, you are a diligent fellow."


Thanks (I think). Since we were still uncertain about the specifics of things, I wanted to make it capable of many different things.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 26th Aug 2012 15:26
BN2: yes, that was intended as a compliment You obviously put a lot of thought and work into the shooting system.

All: What about a name for this game? Which code to use? Destructible or not? What are the goals for this game? What are the current roles for everyone?

So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 26th Aug 2012 21:25
Quote: "All: What about a name for this game? Which code to use? Destructible or not? What are the goals for this game? What are the current roles for everyone?"

This is what I'm working on:
* redo the map
the building placements will be the same, I'll add interiors, do a polygon check to make sure I keep it as low as I can. The buildings will be separate entities
* Once the map is done, finish the tractor movement system. The waypoints are laid out, I just have to move the tractor along them
* finish the tractor model

I intend the the movement system to be put in it's own function so it can just be dropped into the program.

Enjoy your day.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 27th Aug 2012 00:58 Edited at: 26th Sep 2012 17:56
Latch,
I don't know if you have DBP, but there is a short program included to show it's animations.
Frames are:
walk = 2 to 32
shoot = 32 to 47
die1 = 47 to 63
die2 = 64 to 79
recoil = 80 to 88


Boned animation in DBP is SO much easier than struggling with trying to animate in DBC. I still plan on trying to animate in this game by using code.

So many games to code.......so little time.

Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 27th Aug 2012 04:01 Edited at: 27th Aug 2012 07:19
I occasionally get texture UV glitches on the alien model, in about 1 in 20 of them.


As for a name, I've just been calling it Alien Farm, that's lame though. How about "HUNGER"?

I played around with the lighting, redid the sky texture and it looks a lot prettier now. Is it too dark?


Shh... you're pretty.

Attachments

Login to view attachments
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 27th Aug 2012 16:16
I've noticed that glitch since the get-go, but I have not spent any time trying to figure it out.

The lighting is indeed too dark. You can't get a good look at the sky to see one way or the other, but improvement in the texture is a good idea.

Quote: "How about "HUNGER"?"
Maybe "Ravenous"?

So many games to code.......so little time.

Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 27th Aug 2012 20:07 Edited at: 28th Aug 2012 02:03
Quote: "Maybe "Ravenous"?"

"The Ravening"?
Quote: "Ravening - (of a ferocious wild animal) Extremely hungry and hunting for prey."


You can't even see the sky!? Wow my monitor must be set really bright.

[edit]
I adjusted the lighting and actually used the light-map properly this time. Also gave the aliens unique diffuse and specular colourings (with a kind of pearlescent effect), I think it looks good but what do you guys think?
If this still looks too dark then we need more lights in the scene because if the ambience is any brighter it will look like day.




Shh... you're pretty.

Attachments

Login to view attachments
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 27th Aug 2012 22:22 Edited at: 27th Aug 2012 22:40
Just thought of this now. If the collision detection system is a bit on the slow side, we might be able to speed it up with some vector math, taking advantage of some of the features of coldet. If you're already deep into redesigning the farm, disregard this, but here is my idea. Keep in mind, I'm really not so sure what each of the collision commands are for so I could be grossly misinterpreting the problem (though it looks like they are all there for 8 direction motion), but here it is:

Lets say object bob is positioned on an uneven object (ground with maybe some walls in it).

Further more, bob, who is facing a random direction wants to move forward.

Bob will send his request vector to the function, something like:


Which will say that Bob would like to move a distance of MoveX# in the X direction, MoveY# in the Y direction, and MoveZ# in the Z direction.

This would be fine if bob could fly, but he can't, so we need some way of determining which way the ground that he's standing on is, so lets cast a ray straight down. We could then store the normal data like so:

So now we know about the normal data and we can turn the request vector (that was given) into a vector representing where the object will move.

To do this, we will split everything up into components that are parallel to the triangle and normal to it. Perpendicular will stay, normal will be cancelled out.



What this leaves us with is a vector along the triangle's face (or perhaps going away from it). But that won't tell us if we are about to hit something (like another triangle). Well, we do the same thing but with our new vector.



Does this make sense and would it help?

And for the record, this is untested and unfinished (there are several lines of comments in there that say "And so on..."). The +'s and -'s might be wrong, too. It will take some testing to do it. Consider this an idea only

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 28th Aug 2012 03:30 Edited at: 28th Aug 2012 03:48
@BN2
Quote: "Just thought of this now. If the collision detection system is a bit on the slow side..."

It's not that the collision detection itself is slow, it's just the more calls that are made, the more overhead you'll get no matter how fast a DLL is.

I created a built in sliding collision function that works similarly to what you are describing that's included with coldet. I tried it out on the farm model and it works pretty good with just a couple of bumps in a couple of places.

You can get perfect or near perfect collision by casting many rays all over the place in multiple directions similar to how Fluffy's function works, but it can become too much. Coldet itself has a little bit of a problem with how it handles edges. Ideally, for sliding collision, you'd use a cylinder, or a sphere or an ellipsoid and whichever surface that shape collides with, you use the normal of that surface and position the movable object in the direction of the normal to a distance = to the radius. It should be able to be done with a single or maybe 2 collision tests, but unfortunately, when collision happens on a seam in between 2 triangles, it's anybody's guess which triangle's normal is returned. It's solvable with many ray cast tests.

Try whatever works. The less overhead, the better. Fluffy's is fine and gets the job done in most cases, but there are 12 collision tests for a single iteration. I'll post a version with the built in collision so you guys can see how that works a little later.

@LBFN
Quote: "Attached is the animated robot .x file. I don't know if you have DBP, but there is a short program included to show it's animations.
"

I'll take a look.

(a few minutes later...)

The file doesn't have Template definitions for DirectX. If you've had any problem importing DirectX files from whatever package created this export to other applications, this could be part of the problem. But no matter, I think I've got a handle on it! I should be able to mess around a little bit with it and I'll let you know.

Question:
Are the cylinders at the elbows connected to the lower part of the arm or the upper part of the arm?

Enjoy your day.
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 28th Aug 2012 05:12
Here is the shooting system. There is also a demo program there (basic demo program). You can use whatever media you want for the images or omit them completely. First, call GOSUB ShotSetup.

CreateBullet takes a few more arguments than before. Here is the breakdown:
CreateBullet(ObjNum,bulletType,barrelLimb,camflag)
ObjNum is the object shooting the bullet.
bulletType is the type number of the bullet you are creating
barrelLimb is the number of the limb at the tip of the gun. If there isn't one, put 0. If the limb doesn't exist or no limb is given, it will just use the object's position. If it does exist, the bullet will spawn at the limb's position.
camFlag is a flag to determine if you will use the camera's orientation for spawning the bullet. Set to 1 to use the camera's angle. Set to anything else to use ObjNum's orientation. Regardless, the bullet will still spawn at ObjNum's position (be it it's actual position of barrelLimb's position).





Also necessary is this program. This program lets you enter the data for all of your shot types and export them to external files, which are loaded in by the loader routine. Just type your data into the code and run it and it will create the appropriate files. Using it should be pretty straight forward, but I can answer any questions.



Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 28th Aug 2012 06:10 Edited at: 26th Sep 2012 17:56
Quote: "Are the cylinders at the elbows connected to the lower part of the arm or the upper part of the arm?"

They are not actually connected (as far as sharing vertices goes) to either. They are grouped with the lower part though.
Quote: "
The file doesn't have Template definitions for DirectX. If you've had any problem importing DirectX files from whatever package created this export to other applications, this could be part of the problem."


I did not try exporting it using the DX 8.0 export, as I figured it would crash the program. It didn't, and I have attached the file.


Obese87:

That looks cool! Not sure about the darkness though.
Quote: ""The Ravening"?"

Onslaught Of The Ravening

So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 28th Aug 2012 13:44
@LBFN
Here's the skinny: I can extract the animation from the Direct X file, and I can rebuild the robot into a model with limbs.

The animation doesn't quite work because the initial rotation (starting pose) of some or most of the bones is not zero degrees on all axes - and I would have to compensate by having an initial pose of the limbs that were rotated the same as the bones. It would be easier for me just to recreate the animations. The question is, should I? Do you want to use the robot as the creature in the game?

I could also just post the limbed version of the robot without animations.

Enjoy your day.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 28th Aug 2012 16:12 Edited at: 28th Aug 2012 19:57
Latch,

You have been very gracious to try and make this work, but nevermind. It is simply too much work and you have a lot to do already. I was thinking of using the robot in this game if everyone wanted to use it. If not, I will plan to use it in my own game. For the others, here is a pic of it:



I have posed the robot using five different positions and saved the files to create a walk animation. I have written code so that the correct object is shown at the appropriate time. I am working to incorporate the code into the farm game, to see how this affects the FPS rate. I may also look at seeing if there is any difference using the .3ds format.

EDIT: I have the animated robot in-game (using the old farm code with Obese's additions) and the frame rate is steady at 60 (which is what it is limited to). Please let me know if you want to use it. My feelings will not be hurt either way.

So many games to code.......so little time.

Attachments

Login to view attachments
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 29th Aug 2012 05:07
I couldn't resist. Here's a DBC compatible version of your robot with animations, though I tried to make the walk cycle look mechanical, it looks kinda staggered...

Don't worry, I'll get my stuff done in the next couple of days.

Enjoy your day.

Attachments

Login to view attachments
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 29th Aug 2012 05:10
Would I be right in guessing this project is strung across this thread?

BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 29th Aug 2012 05:14
Quote: " Would I be right in guessing this project is strung across this thread?"


Yeah. Probably within the last 3-4 pages or so.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 29th Aug 2012 05:20
well, I would not mind yet again sponsoring some FTP space for collaboration as on the berzerkremake project...

it also allows for a html page creation so whoever is heading the file management can also create a html page so that not everybody has to use FTP to access the files...

just thought I would let everybody know, but of course I am not saying do not embed them here, just saying the use of FTP did help to a degree on the berzerkremake project...

the call is yours

LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 29th Aug 2012 18:23 Edited at: 30th Aug 2012 19:18
Latch,

It is amazing what you are able to accomplish. I love the anims, and the robot's head popping off when he dies was absolutely hilarious.

So, what is your status with the tractor / gun / farm? Is there anything I can do to help?

MrV,

The file sharing via the FTP on Berzerk was indeed very helpful. I don't think we have as many files associated with this project though.

So many games to code.......so little time.

Attachments

Login to view attachments
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 29th Aug 2012 22:51 Edited at: 29th Aug 2012 23:17
Quote: "So, what is your status with the tractor / gun / farm? Is there anything I can do to help?"

I redid the house, I shaved off a few hundred polygons added interior walls and a opening.

The tractor hasn't really made much progress, though I could post it here if you want to work on it. Is it possible to keep the limbs in tact? What format would you like me to post it as? Direct X (DBC style) OBJ, LWO, 3DS, .

The tractor itself needs texturing, I was hoping to add a couple of details like a smoke stack, a visible engine, maybe tail lights, pedals... I was even working out some ideas for a steering differential, but maybe that's too much .

The flat bed just needs some texturing. Maybe a couple of details, rear lights, a license plate.

Even if you can't preserve the limb integrity, Once you've finished them I could adjust that like I did for the robot. Just don't add any kind of skeleton.

Enjoy your day.
MrValentine
AGK Backer
13
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 29th Aug 2012 22:53
Sorry for the late reply LBFN but I was at my shop which has next to no internet [my store is next to the mains power grid which gives off a lot of EMPs... looking for a way to shield it...

anyhoo, not to worry, just wanted to see if it would help out this time, if not just ask next time anytime

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 29th Aug 2012 23:26
LBFN

I'm attaching 3 x files, the tractor, the trailer, and both together. They are all single meshes, not broken down into limbs so I'm not sure if that will make it more difficult or easier to deal with. Though if you can go to face and vertex mode, you can see where individual components aren't sharing vertices.

Take a look, see if you can get 'em textured, maybe add a couple of small details.

Enjoy your day.

Attachments

Login to view attachments
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 30th Aug 2012 03:39 Edited at: 3rd Sep 2012 07:25
Hi Latch,

I will plan to take a look at them tomorrow morning to see what I can do. Do you have reference pics for how you would like them to look?

EDIT: Using a modified John Deere model 2510 image for the tractor map. If you want something else, please let me know ASAP.
Also, in order to UV map it correctly, I have to group items differently in order to make them look right. Not sure if this will work the way I want to do it. Will post a prelim later

So many games to code.......so little time.

Attachments

Login to view attachments
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 31st Aug 2012 00:52 Edited at: 31st Aug 2012 02:52
LBFN,

I used a sketchy schematic to make the tractor, and never really had an image to use to texture it. I had some ideas and eye-balled some photos, but never settled on anything.

Also, I don't know if you noticed, I just noticed it myself, but the normals for the rear fenders are reversed. That's a problem with the model I gave you. I'll attach a new model with a correction.

What you are doing looks pretty good. I like the idea but that particular photo has some troubles that may make it difficult to use.

* For example, the wheels aren't flush with the camera so the texture is strangely angled.
* even though the size of the picture is high, the quality of the photo is low such that the graininess shows up on the model
* there's no good tread shot - so you've had to build one that has a different light intensity than the side of the wheel

Also just some general things when composing the final texture that may be useful to you:

* The image has to be square in a power of 2. No larger than 512x512. You generally shouldn't need a texture with pixels greater than or equal to the screen resolution. There are always exceptions of course.

* Also, almost all, if not all graphics hardware deals in textures in powers of 2. You may be able to load any size texture but there is almost always an internal hardware conversion to a power of 2. That conversion adds a little bit of overhead and also it can skew the quality of the intended texture.

* be aware of the light especially when transitioning over seams (like the side of the tire to the tread)

* if you mirror the texture on both sides of an object, if you can, dump, or create an unwrapped texture that has both sides displayed. On the mirrored side, eliminate or change any reversed lettering or duplicate details that should only be on one side.

Whatever you did this time with your direct X export, it is almost DBC limbatized! (limbatized is a word, really). In your export options for DirectX can you eliminate VertexDuplicationIndices from being put on each mesh? And also eliminate XSkinMesh anything from being put on each mesh? The template headers can be there, but the actual placement of the data is adding a couple of hiccups.

Also, and there's probably nothing you can do about this, the export has the wrong number of semicolons for MeshMaterialList. If you can do whatever you did and correct or adjust those things I listed, you can create a DBC animatable object.

Overall, good work. Sometimes to get the texture I need, I build a high polygon model with a lot of detail. I then set up some lights and bake a new texture. I use this new texture on a simpler low polygon model.

It's easy for me to tell someone else what to do and not do it myself! Take what I say as suggestions, and not as me trying to control every aspect of the model!

Enjoy your day.

Attachments

Login to view attachments
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 31st Aug 2012 02:36 Edited at: 4th Sep 2012 05:00
Latch, I literally just threw this all together as a test. It was not intended to be a final product at all. I understand the issues with the wheel angle, power of 2 on textures, lighting, etc. and I just wanted to do something with separate groups that I could export and see how it worked. It didn't make sense to me to do a ton of work if the export would be a problem.

Anyway, glad it is almost limbatized. I used MS3D's 8.0 direct X export this time. It is possible for me to UV map it differently, but it is a lot more work, so I would rather go at it this way. I will see if I can find a better quality texture, so the tractor model itself may change.

I'm going to be busy with real world stuff for a few days, so I'll get back when I can, but don't expect anything anytime soon.

So many games to code.......so little time.

Attachments

Login to view attachments
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 31st Aug 2012 02:46
Quote: "Latch, I literally just threw this all together as a test"

I understand that. I just like to get my thoughts out on paper sometimes.

Quote: "I'm going to be busy with real world stuff for a few days, so I'll get back when I can, but don't expect anything anytime soon."

No problem.

Real life has a way of taking up real time!

Enjoy your day.
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 1st Sep 2012 06:37
So programming wise, what still needs to be done?

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 1st Sep 2012 13:39
@BN2
Sorry BN2, I haven't had a chance to try out your shooting system yet nor given you props for completing it. It is on my list to do after I finish 1 or maybe 2 other things.

As far as programming, though Fluffy's sliding collision works, it would be nice to have a method with fewer collision tests in a single iteration. Since ColDet seems to be officially on the table, take a look at the built in collision function. See if it works reasonably well for this. I did a couple of simple tests... it worked but not entirely - like at some points the camera would go through or over the fence, or it would bounce out of the door of the shed.Maybe try implementing some of the math ideas you had. If Fluffy is still around, maybe he has a few ideas on where some of the calls in his collision function can be minimized.

Also, for the farm, I need 4 planes textured in such a way that it looks like the glow from a porch light or street lamp. The main color should be white and it should haze to the edges. Ideally it is transparent or ghosted and code would accompany them to point at the camera. They also need to have the FOG flag set so they do not respond to fog so they can be seen in the distance.

What I've been working on is the farm, and I've finished as much as I think I will for the environment. I could spend much more time on it, but I won't. Here's what I've done:

* Separated each object as it's own entity complete with it's own light map object and texture
* Retextured the ground using multiple blended textures including blending in the lightmap texture. The ground no longer needs a separate lightmap or object and the surface looks much better.
* reduced polygons on the house, and ground
* added interiors and doors to the house and barn
* retexured the house completely
* included two sets of windows for the house - a lightmapped set with reflections and a non lightmapped set colored or hazed. Overlayed and ghosted these really add a cool effect to the house. I'm really happy with how this turned out. The interior of the house is dark, but you can see slightly through the windows. Once inside, you can change the ghosting or hide the overlays to make looking at the outside brighter, than looking into the dark interior of the house.

Overall, I'm very pleased with how the farm models came out. I could keep playing and tweaking with the models and messing with the lighting to make it even better, but I gotta move forward. The change in textures and the reduction of polygons in general seems to have boosted performance a little.

What I'm doing now is writing a loading procedure for the farm. Between the images and models there's about 40 to 50 pieces of media to manage for the farm alone, so I want to get that organized.

After that, I still have to move the tractor around automatically.

Once that's done, we need to attach BN2s weapon system to the gun on the trailer and see if it'll work.

In the mean time, we still could use:
- bullet holes in walls
- sparks/splinters
- fire, smoke
- rain, snow ?
- sound effects
- control system, maybe with the ability to customize the keyboard or joystick
- retexturing the space ship
- an animation management system

Enjoy your day.
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 2nd Sep 2012 02:14
I'll take the collision system, see what I can whip up.

Also, for:
Quote: "- bullet holes in walls"

If you are thinking of just placing a textured plain at the hit point, I already have that feature in my shooting system library. If you had another idea that doesn't involve more objects, then you can disregard this message.

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 3rd Sep 2012 07:27
I have finished working on the tractor, here is a pic:



So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 3rd Sep 2012 13:42 Edited at: 5th Sep 2012 11:43
FARM BUILDING AND GROUNDS MEDIA

I'm attaching the new and, most likely, FINAL media for the farm environment. I'll go through this thread and delete the old media as it is no longer relevant when I have a chance.

I've created a proposed directory system consisting of one main directory and five subdirectories labeled
bin
data
graphics
includes
sound


The main working directory stores the master source, the setup.ini file, and the d3drm.dll to distribute with the the game.

The bin directory is for storing any executable or custom dll type files. The ColDet dlls would go in there, for example.

data is for any miscellaneous data - text files, arrays, memblocks, etc.

graphics is for object and image media. There can be sub directories as necessary. The farm media is stored in
graphics/farm_actual

includes is for all of the DBC #INCLUDE libraries.

sound is of course for sound and music. Subdirectories can be created as needed.

There are TWO subroutines that need to be included in our final code:
_create_directories
_load_farm

They both do what their names suggest. The DBA file included in the ZIP archive has these two subroutines and a bit of example code how they might be called. The loading routine is a brute force method. I started making a clean universal bulk media loading system but it involved too much file name changing and file system library coding and for such a small project, it was a bit of overkill.

Regarding the new media: this media is going to force a change in the collision setup because as I've mentioned, all of the buildings and the ground are separate objects.

@BN2
What I meant to say when I wrote
Quote: "take a look at the built in collision function"
above was, take a look at the BUILT IN SLIDING COLLISION FUNCTIONS of coldet. You may need a distinction anyway between the bullet collision and the moveable entity to other object collision.

Everything could be polygon collision but that makes sliding collision more calculation intensive. A possible solution is to create a simple collision environment made up of simple rotated boxes that is used for the movable entity collision.

Also there are doors on the barn and house. They are limbs so you would most likely need a rotatable box for collision with them or else the collision would be static.

@LBFN
Looks pretty good. Can you post the image you used for the texture and your revised model? I especially like that rear wheel. I also need to see the size of the tractor as the positions of the original tractor's way points were based on it's size and scale relative to the farm.

Enjoy your day.

Attachments

Login to view attachments
Libervurto
17
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 3rd Sep 2012 15:19 Edited at: 3rd Sep 2012 16:08
I made some alien noises. Download includes new recording of the main music. I thought "Harvest" might be a good name for the game.

Shh... you're pretty.

Attachments

Login to view attachments
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 3rd Sep 2012 17:17
The size of the tractor is very similar to what it was before. Texture and model are attached.

So many games to code.......so little time.

Attachments

Login to view attachments
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 4th Sep 2012 05:02
Okay, the trailer is done. Here is a pic:



Let me know if you would like any changes made.

So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 4th Sep 2012 10:38
@LBFN
Get rid of the wood. It doesn't make aesthetic sense - even though many flatbeds have a wooden surface. It looks like a clean bedroom floor. The rest looks good. Better to have a flat, matted, dirty iron look. Keep in mind there will be a heavy caliber mounted gun of some sort and you wouldn't want hot shells or fire bursts to be a danger because of the surface. Even a see through grate pattern would be better in my opinion. I would even suggest a polished rough steel or brushed/ruined chrome for the rear bumper and the wheel guards, but that may be a bit difficult to accomplish. What's kind of interesting in the posting is slight variations of color in the black. Can you do anything with normals or normal maps in your 3D app?

For the tractor, I'm unable to load it into anything with the textures and the UVs intact. Can you post a version in .OBJ format?

Enjoy your day.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 4th Sep 2012 17:24
Quote: "For the tractor, I'm unable to load it into anything with the textures and the UVs intact. Can you post a version in .OBJ format?"

This is why I did the test, as I wanted to be sure it would work for you.

So many games to code.......so little time.

Attachments

Login to view attachments
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 4th Sep 2012 22:53
@LBFN
I hope my comments on the texturing and such weren't offensive. It's not my intention. I'm not sure how a text message might be perceived.

Quote: "This is why I did the test, as I wanted to be sure it would work for you."

It's weird because I could load the robot.

I downloaded the OBJ tractor and it works. Now I can understand the full texturing. Ok, now I've got to DBC-a-tize it.

Enjoy your day.
LBFN
17
Years of Service
User Offline
Joined: 7th Apr 2007
Location: USA
Posted: 5th Sep 2012 08:28
No worries, Latch.

Quote: "It's weird because I could load the robot."

The only thing I can think is that I did not have to do a lot of UV map variation with the robot. The textures pretty much went right onto the various groups without having to be worked much. The tractor took a lot of reworking of the UV map to get right.

Quote: "I downloaded the OBJ tractor and it works. Now I can understand the full texturing. Ok, now I've got to DBC-a-tize it."

Waiting to see if this works out.

So many games to code.......so little time.

Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 5th Sep 2012 12:55 Edited at: 5th Sep 2012 12:58
@Obese
The music is really coming along. Interesting sounds.

With the licensing on MP3 files, I'm always nervous about some legal matter raising it's ugly head at some point.

Do you think you would be able to research how to use OGG files with DBC?

I was also looking at WavePack for compressing .WAV files for lossless sound quality. It has an exe that can be called from the command line to pack and unpack .WAV files. It also has a mode to create a self extracting EXE of compressed .WAV files.

I've only read over some of it and haven't tried it but it may also be something to mess around with. The reason to use MP3s is because of the smaller files siaze than .WAV, right? So why not use compressed waves?

LBFN,
I may adjust the textures on the wheels of the tractor. There is a seam on the treads where the image doesn't meet up properly, and the front wheel side view isn't flush and a bit blurry.

Enjoy your day.
Latch
17
Years of Service
User Offline
Joined: 23rd Jul 2006
Location:
Posted: 8th Sep 2012 13:29
Sorry guys, I've been a bit busy this week. I should have some free time shortly.

Enjoy your day.
Fluffy Rabbit
User Banned
Posted: 8th Sep 2012 15:31
@Latch-

I would definitely recommend compressed WAV files over OGG files. One would need to include several special DLLs in order to simply play one of the latter. When it comes to compression, I would recommend using a more generic system that could be called from a DLL, so as to make it easier to create archives of WAV files. However, I can't seem to find any good information on zipfldr.dll or 7z.dll, so such functionality is still a mystery to me.
BN2 Productions
20
Years of Service
User Offline
Joined: 22nd Jan 2004
Location:
Posted: 10th Sep 2012 00:57
Sorry I've been quiet lately. I recently moved and don't have internet access yet. Additionally my hard drive has started to give signs of failure, so don't expect anything from me for at least a week or so.

Sorry

Great Quote:
"Time...LINE??? Time isn't made out of lines...it is made out of circles. That is why clocks are round!" -Caboose

Login to post a reply

Server time is: 2024-04-25 11:38:04
Your offset time is: 2024-04-25 11:38:04