[WIP] Oblivion-style Tree Kit

Sprites, textures, sounds, code, and other resources belong here. Share and share-alike!
Forum rules
Before posting your Resource, please make sure you can answer YES to any of the following questions:
  • Is the resource ENTIRELY my own work?
  • If no to the previous one, do I have permission from the original author?
  • If no to the previous one, did I put a reasonable amount of work into the resource myself, such that the changes are noticeably different from the source that I could take credit for them?
If you answered no to all three, maybe you should consider taking your stuff somewhere other than the Resources forum.

Consult the Resource/Request Posting Guidelines for more information.

Please don't put requests here! They have their own forum --> here. Thank you!
Post Reply
User avatar
Nash
 
 
Posts: 17439
Joined: Mon Oct 27, 2003 12:07 am
Location: Kuala Lumpur, Malaysia
Contact:

[WIP] Oblivion-style Tree Kit

Post by Nash »

Image

Download >> https://www.dropbox.com/s/ae593q6r0flpz ... e.pk3?dl=1

Just a little SDK I'm messing around with. Trees like in The Elder Scrolls IV: Oblivion where the trunk is a 3D model but the leaves are individual billboard sprites.

The workflow is kind of convoluted at the moment:

1) Go into the "tree design" map to place the "design mode" actors; this is where you place the trunk at [0, 0], and then individually place the leaf sprites to "design" the look of your tree. It's actually pretty fast; just spam-copy-paste the leaves and use GZDoom Builder's "jitter" mode (Ctrl + J) to randomize the leaves. Be sure to reset every actors' angles to 0.
2) Run the tree design map with +logfile to get a dump of all of all the A_SpawnItemEx commands needed to spawn the leaves at the correct position
3) Take that dumped info and paste it into the final trunk object's DECORATE (use anonymous functions to spawn the entire set in 1 tic)

To do:
- leaves do not update in real-time; if the trunk moves, gets destroyed or whatever, the leaves will remain floating
- leaves do no account for trunk's scale, angle, pitch and roll
- leaf animation via hardware shaders?
- look for better ways to streamline the creation and design workflow

Credits:

Bethesda Game Studios: concept
Me: code, trunk mesh
carlcyber: RoundToInt ACS function
????: trunk and leaves textures, I used Google Image hastily to prototype these, I'll need to find the authors eventually
Last edited by Nash on Thu Jan 23, 2020 3:42 am, edited 3 times in total.
Flyingcomputer
Posts: 14
Joined: Wed Aug 26, 2015 3:02 am

Re: [WIP] Oblivion-style Tree Kit

Post by Flyingcomputer »

These definitely look better than the majority of sprite only based trees, they fit along with dooms look pretty well!
User avatar
PandaDoomer
Posts: 107
Joined: Sun Apr 12, 2015 9:05 pm
Location: USA

Re: [WIP] Oblivion-style Tree Kit

Post by PandaDoomer »

These look... pretty good for doom, man.

Good work.
User avatar
Caligari87
Admin
Posts: 6174
Joined: Thu Feb 26, 2004 3:02 pm
Preferred Pronouns: He/Him
Contact:

Re: [WIP] Oblivion-style Tree Kit

Post by Caligari87 »

Gonna toss an idea I've been considering for a while, what about an iterating branch-grower? Single "Trunk" actor takes args x number of branches and y number of sublevels. Trunk and branches are appropriately scaled versions of the same 3D or voxel model. Each trunk/branch spawns x offshoots on its length (including at least one on the end), decrements y and repeats until y = zero. The final sublevel spawns leaf sprite bundles.

Could even multiply the branches/iterations values by a "tree-detail" cvar for people with slower computers.

Granted this is more automatic than designed, but I think it has potential.

8-)
User avatar
PandaDoomer
Posts: 107
Joined: Sun Apr 12, 2015 9:05 pm
Location: USA

Re: [WIP] Oblivion-style Tree Kit

Post by PandaDoomer »

Caligari87 wrote:Gonna toss an idea I've been considering for a while, what about an iterating branch-grower? Single "Trunk" actor takes args x number of branches and y number of sublevels. Trunk and branches are appropriately scaled versions of the same 3D or voxel model. Each trunk/branch spawns x offshoots on its length (including at least one on the end), decrements y and repeats until y = zero. The final sublevel spawns leaf sprite bundles.

Could even multiply the branches/iterations values by a "tree-detail" cvar for people with slower computers.

Granted this is more automatic than designed, but I think it has potential.

8-)

Sounds neat to me.
Post Reply

Return to “Resources”