[WIP] Oblivion-style Tree Kit
Forum rules
Before posting your Resource, please make sure you can answer YES to any of the following questions:
Consult the Resource/Request Posting Guidelines for more information.
Please don't put requests here! They have their own forum --> here. Thank you!
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?
Consult the Resource/Request Posting Guidelines for more information.
Please don't put requests here! They have their own forum --> here. Thank you!
[WIP] Oblivion-style Tree Kit
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.
-
- Posts: 14
- Joined: Wed Aug 26, 2015 3:02 am
Re: [WIP] Oblivion-style Tree Kit
These definitely look better than the majority of sprite only based trees, they fit along with dooms look pretty well!
- PandaDoomer
- Posts: 107
- Joined: Sun Apr 12, 2015 9:05 pm
- Location: USA
Re: [WIP] Oblivion-style Tree Kit
These look... pretty good for doom, man.
Good work.
Good work.
- Caligari87
- Admin
- Posts: 6174
- Joined: Thu Feb 26, 2004 3:02 pm
- Preferred Pronouns: He/Him
- Contact:
Re: [WIP] Oblivion-style Tree Kit
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.
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.
- PandaDoomer
- Posts: 107
- Joined: Sun Apr 12, 2015 9:05 pm
- Location: USA
Re: [WIP] Oblivion-style Tree Kit
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.
Sounds neat to me.