COLLAB2021 - HQ - Stylized Fantasy Environment

Kent Trammell



Announcement #6: Final Presentation Premiere!


Announcement #5: Conceptualizing the Final Animation


Announcement #4: Closing Post


Announcement #3: Blog, Syncing Saga & More


Announcement #2: Updates & Loose Ends!


Announcement #1: Collab2021 has officially begun!


THE PROJECT

#Collab2021 is focused on stylized, low-poly, fantasy environment creation! Specifically this gorgeous illustration by Vadim Zaitsev:

You can find more from Vadim on artstation.

Through April we will be creating a comprehensive 3D version of this environment and we need a committed team to make it a reality! If you’re not sure what this Collab format is all about, check out the blog article first. If you know what you’re getting into, continue reading about how to register and what the schedule will look like.

REGISTRATION

Collabs are open to all Citizen members (membership is required to participate). You need to be subscribed by April 5th and remain subscribed through May 4. You're welcome to subscribe earlier so you can access the recommended courses listed below. This option could be helpful for focusing on learning from content before the collab begins at which point you can focus primarily on applying what you've learned.

Collabs don’t have an official web page or system built into our site. Instead it’s facilitated through the Forum, Live Streams, and Google Docs. Fill out this form to register for the Collab. This will give us insight into how many people are interested, the skill levels involved, and some other info that’s helpful before we get underway.

The last day for registration is April 5th. After April 5th the team will be closed! [evil laughs]


SCHEDULE / OUTLINE

Disclaimer

As with any production, one can only plan so much before unanticpated things come up. That’s to say we will be at the mercy of the project and the content could change as needed. Schedule should remain the same though.

Week 1 (Apr 5 - 11): Modeling

Goal: Since we’re working within a low-poly, stylized (simplified) genre I think we could finish all the modeling in the first week. For most assets in the scene the modeling is straight forward. For trees and bushes it’s a little different. I highly recommend using the Sapling Addon included with Blender) as taught in the stylized forest course. Similarly clouds will be a unique asset to tackle; something we will need to brainstorm as a team.

Stream 1: April 6th @ 1pm US central time

Helpful Content:

Week 1 Homework Due: April 11th by midnight

Week 2 (Apr 12 - 18): Sculpting Accents

Goal: It’s possible that sculpting will be the next step for some assets (ex: rocks) and not for others (ex: trees). If your asset doesn’t need sculpting then your task this week is UV layout and texture painting a color map. If your asset needs sculpted detail, you can do that in addition to the UV layout and texture painting. By the end of the week we all should have our completed model painted with a color map and sculpting done if applicable.

Stream 2: April 13 @ 1pm US central time

Helpful Content:

Week 2 Homework Due: April 18th by midnight

Week 3 (April 19 - 25): UV's & Texture Painting

Goal: This should be an easier week than the first two. Since the style is simplistic, the material can also be simplistic. It can also be more complex if one is so inclined. Things like procedural texture accents, procedural water, randomization of the same material across multiple objects, etc. Additionally we will dip our toes into lighting. At the very least we need to implement lighting in a way that informs our material qualities. At the most I want us to light our asset in a standalone presentation, as if you were presenting it to a supervisor for approval.

Stream 3: April 20 @ 1pm US central time

Helpful Content:

Week 3 Homework Due: April 25th by midnight

Week 4: (April 26 - May 2) Materials & Finalization

Goal: As with most productions, the last stretch is the most unpredictable and often results in a lot of problem solving. I expect this week to be a smorgasbord of  tasks from catching up / putting final touches on assets, assembling the final environment together, polishing lighting and atmosphere, and who knows what else.

Stream 4: April 27 @ 1pm US central time

  1. Project status update
  2. Homework reviews
  3. Overview week 4
  4. Demo: 
    • Environment lighting (Day)
    • Environment lighting (Night)

Helpful Content:

Week 4 Homework Due: May 2nd by midnight

Closing Stream (May 4)

With the project officially complete, this stream is meant to be a celebratory bookend. We will revel in our hard work and discuss a post-mortem: What worked well, what could be improved next time.


Communicating as a Team

Of course communication is key for effective teamwork. To facilitate this we will utilize a network of forum threads.

Discord: Our resourceful Team Leads have setup a discord server for us! The server features channels for each team including audio + video capability.

Discord is best for LOW LEVEL communication since it’s the easiest, quickest way to communicate. By “low level” I mean casual, small-consequence discussion. The main negative of persistent chat is its brief nature; comments appear and then immediately get buried. This is fine for the majority of our discussions (let’s say 75%) but we want to avoid important info getting buried.

HIGH LEVEL communication is the important stuff that shouldn’t get lost in a persistent chat. Please keep high level discussion like protocols, announcements, lengthy troubleshooting and idea pitches on the forum threads listed below.

HQ Forum Thread: This thread is the foundation of our communication structure as denoted with "HQ" in the title. Discussion here should be broader in context; having to do with the project as a whole. It's the place I will be posting important announcements for everyone involved. It's also  ideal for general questions about the project and light-hearted "water-cooler talk" for the team. Things like encouragement, inspirational info / artwork, relevant memes. I love memes.

It's NOT ideal for *specific* things like questions pertaining to a certain part of the environment, WIP of individual parts, or person-to-person discourse.

Team Threads: If more than 30 members register for this project we will divide into sub-teams. Each sub-team will collectively tackle a group of related assets and will be lead by a member (most likely contributors from #collab2020). Each team will have a dedicated forum thread for specific discourse pertaining to their parts. Same guidelines as the Central Thread but with a specified topic.

Individual Homework Threads: Each contributor is required to create a thread for themselves for posting homework confirmation at minimum. This is also where any discourse about your specific part happens. You're encouraged to treat it as a work-in-progress (WIP) thread, posting updates about your work as you go.

Direct Contact: Tagging is ideal for directly contacting me or anyone involved with the project. Tag me (@theluthier) with questions or advice in any of these threads. I guarantee I will be checking my notifications regularly every Monday-Thursday throughout the duration of the project.

Of course the more people that register the less accessible I will become for direct / lengthy conversation. This is where sub-team leaders will be invaluable. If we break into sub-teams please contact your leader first, then me second.

Livestream Chat: The realtime interactivity of streams is another great way to communicate. Taggin works there as well along with an additional tool: Typing "[Q]" in the chat adds a blue "question" label to your post. This makes it easier for me to spot direct questions for me to answer while streaming.

DISCLAIMER: These guidelines are only intended to streamline the challenging task of communicating globally across the internet. They're not meant to create a tense atmosphere of rules! We're a relaxed, reasonable bunch of Blender heads. If you don't know where you're supposed to ask a question, go ahead an ask somewhere and you'll be answered or kindly directed to the right place if applicable.


Syncing Project Files

Everyone working from the same project directory is important for a production like this. From linking models back and forth to sharing texture maps, it's a must for a smooth working experience. Further protocol like file naming conventions and saving files in the right place is necessary to avoid a confusing mess.

The following instructions are depending on you syncing the project's Google Drive folder to your local computer. If you haven't done that yet, please check the Announcement 2 post for instructions.

For this project I want to make the process as simple as possible for participants. To achieve this I've come up with a "plug-n-play" system. Basically I will save a placeholder .blend file in both the WIP and MODELS folder for each participant by including their username in the filename. Once the placeholder is present, each participant saves their work into the MASTER collection within the scene and that's it! I take it from there.

I covered this concept in the Week 2 stream but here's a set up step-by-step instructions as well:

  1.  Locate and open your WIP placeholder .blend file that contains your username. Within the "WIP" directory there are folders corresponding to asset categories. Navigate through these folder to find the .blend with your username.

  2. Once opened, you will either see a proxy version of your asset or a blank scene. Either way, copy and paste all the pieces of your asset into this .blend file.

  3.  Look for the "MASTER_" collection in the outliner. The naming convention is "MASTER_category_asset_username'. This collection will be linked into the final assembly file. It's imperative that you move every visible part of your asset into this collection.
    1.  You can have other objects in this scene like reference objects, image planes, utility objects (empties), etc. But they must be outside this MASTER collection.

    2.  Do not name any other objects or collections "MASTER" in the scene.

  4.  If your placeholder scene has a proxy object in it, you need to align your version of the asset to the proxy. Scale it, move it, rotate it however you need to match the proxy.
    1.  Note: These proxies also have a copy of the master camera in the scene for which the proxy is aligned to the art.

    2.  If your placeholder scene does NOT have a proxy in it but DOES have a master camera, your asset should align to the camera, simply keep your asset in the center of the world when saving

    3.  If your placeholder scene does NOT have a proxy NOR a master camera, simply keep your asset in the center of the world and scaled according to the human proxy in the scene.

FAQ

How much time am I expected to commit to this project?

We stress commitment because it's the best to ensure A) the project succeeds and B) lasting skills are learned. We only expect you to commit as much time as you can. DO NOT commit full-time hours to this project (8 hrs a day). As the instructor, I should be the only one doing this.

Everyone else (sub-team leads and contributors) shouldn't need to apply more than 2 hrs per day to the project. It's all relative depending on your availability and skill level. If you can't afford 2 hrs per day you can pick a simpler asset. If you have more time to contribute then perhaps choose a more complex asset. It's up to your discretion.

If you only have 2 weeks available in April, that's OK! Just let me or your sub-team lead know and it's all good. 

How do I tag someone?

Like twitter and instagram you simple type "@username" to tag someone. Tagging fires a notification to this person. Everyone's username is either A) in parentheses beside their display name or B) substituted if they don't specify a display name:


What service do we use for syncing files as a team?

We used Google Drive last year and it worked pretty well. Syncing our files to the cloud proved to be a crucial way for everyone to stay up-to-date conveniently. Since we lean heavily on library linking, it's imperative that we all be up-to-date. Google Drive is very accessible too; most people have an account anyway.

If you don't have one, sign up to get 15GB of storage for free. That should be plenty of storage for our project.

I know people are hesitant to sign up with Google but a burner account just for this project isn't too invasive, right? Otherwise Mega drive could be a good alternative since it offers 50 GB for free.

What if I'm not available at the time livestreams are broadcast?

Unfortunately the stream time can't be ideal for everyone. If you're not able to watch the stream live, I will post the recording within 24 hours of broadcast.

When is homework due exactly?

Homework is due every Sunday @ midnight each week. This means whenver your midnight is; relative to your timezone. This gives me each Monday to review homework internally before streaming on Tuesday. Please adhere to this deadline as late submissions can really stunt  the flow of the schedule.

Can multiple people volunteer for and build the same part?

Yes! Early volunteers will have the best chance at picking a unique part but eventually parts will be assigned to multiple people. Of course we can't feature multiple of the same part for the final scene so the best execution of each part will end up in the final.

Are we bound to also 1 asset or if there is spare time can we even go for a second or third piece?

You're not limited to 1 asset. I'd love to see contributors challenge themselves with multiple assets, as several did last year. This gives contributors the ability to define their own scope of participation: If someone is newer to Blender they can choose one asset. If someone is more experienced they can choose multiple assets.

Who “owns” the final project?

Technically CG Cookie owns the project but the final project will be released freely as Creative Commons (CC-BY-4.0).

Can I feature my work from Collab2021 in my online portfolio and / or demo reel?

100% yes! Contributors are welcome to use/share visuals from the project to social media accounts, online galleries / portfolios, and featured in demo reels.

  • clementk (clementk) replied

    @theluthier Just wanted to ask if you have and if you have sorry I missed it but have you posted the footbridge yet somewhere?

    Thanks.

  • Vincent (vincav81) replied

    @theluthier Any word on if splat21 is still doing a blog of Collab2021? Thank you.

  • adrian replied

    vincav81 I think splat21 is definitely going for a blog, you'll probably find him lurking around a bush or tree, or even up a mountain, or he could be lurking inside the house watching us through the window. Just smile and wave.....

  • splat21 replied

    vincav81, yes, Splat is still doing a Blog.  It is taking me a few days to put it together.  That, and as @adrian2301 pointed out, I keep quite busy lurking about.  I hope to launch the Blog on Friday.  Thank you for your interest.

  • Kent Trammell replied

    Apologies for the delay - I just posted a footbridge message in the Stan Dalones team thread!

  • Kent Trammell replied

    @lexicolopolis Well..that is a Question with a capital "Q".

    Short answer: I...don't know! Since I've never done a project like this or worked on a shipped game, I was hoping we could figure out such questions together through the course of this project.


    Longer answer: I don't think a good answer to this question exists. It might seem like your questions could have a black and white answer because it's mathematical and this is computer art after all. But allow me compare it to this question: "What is the best computer for me?"

    I had to answer this question a couple years ago to build my current PC. I spent a week researching and watching reviews and I felt no closer to answering that question the way I expected. There's simply too many factors surrounding my specific computer usage and too many products on the market to find an objectively true answer. By the time I nervously purchased all the parts to build my PC, I was mostly just hoping it would turn on, much less if it was objectively THE BEST computer for me. Spoiler: The computer did work and it's accomplished what I needed! Who knows if it's accomplishing "the best" though.

    Your question is similar: What approach would be most optimal for performance as it relates to this project? Frankly we won't know until the end and we find out if our scene runs in real time in the viewport. If it lags, we'll know that either A) we weren't optimal enough or B) Blender's viewport is less capable that unreal or unity.

    So rather than comparing lo poly assets vs data sharing, why not expect to implement both? If we keep our geometry as low as possible AND we use data sharing where applicable, that's our best chance to achieve the goal. And that's really all we can know until we have the assembly file together. At that point maybe a technical math wiz could take a deep dive into the numbers but still those numbers would only directly apply to this project. The next project would have its own factors that switch up the formula. This is why every game has different poly count limits on assets, different texture resolution protocols,  etc.

    I'm rambling but your question touches on a giant conversation; endless conversation really. I hope this is helpful at least a little...

  • Beau Kromberg(Bric-a-Brac) replied

    @theluthier That's kind of where the conversation ended up with my husband. His short answer to me (which came after maybe an hour lecture on rendering), is that it probably has to do with the specific platform you're rendering on, and how computer hardware is scaling at any given time. And that I should just run benchmarks. Hahah

  • sheila5 replied

    I'm looking forward to it Splat because the information on the forum is rather fragmented and I'm getting information overload 

  • adrian replied

    If data linking does increase poly-related performance, does this translate to other environments? For example, can you export to Unity in a way that the data-linked geometry is functioning as multiple copies of the same base object? Or would you have to use a different method to have this translate properly?

    @lexicolopolis , Simply put you would use a different method. In your image you would model your 4 stones in Blender and optimize those 4 stones with details such as with normal maps, then import 4 stones into Unity and the linking for what, 20 stones, would be done in Unity. It's called a prefab in Unity. From your 4 stones you make 4 prefabs one for each, then you add the prefabs to the scene and duplicate, rotate and scale the prefab.

    Just looking at your image you could go as low as maybe 48 verts for the wall part.

    May I suggest a different approach.

    This is a basic silhouette shape of the wall the rest of the detail for each stone could then be sculpted, you may wish to add a little more detail first like this.

    This gives 171 verts, then you would duplicate this mesh sculpt detail then bake the detail to the original, it would be much faster workflow than stacking stones then deleting all those internal faces that will never be seen. Now that would be optimized. I just noticed I haven't left space for the metal part but you get the idea.

  • splat21 replied
  • Kent Trammell replied

    📢 Announcement #3: Blog, Syncing Saga & More


    Some inspiration / Food for thought

    andybegg shared a great video on Discord of an artist overviewing their modular game environment methods. The style and structure is very similar to our project. I wish the video was published when we started the Collab! But still it's full of timely insight about this kind of work. NOTE: None of it is done with Blender but it's the concepts we're interested in here, all of which can be translated to Blender. I highly recommend watching for inspiration and to gain some bird's-eye perspective:


    Splat's Blog is LIVE

    Splat has launched his Blog to detail the Collab from the inside! Expect to see meaty content about what we're learning from the project, interviews, tips, tricks, and spotlights on asset progression. Check it out regularly as he updates each week!

    Google Drive Syncing (and a Revelation)

    Google Drive has proven...cumbersome, right? Thankfully blanchsb has recorded a fantastic tutorial video about getting synced to this project's shared folder, including insight about working with the .blend's organization. PLEASE WATCH THIS IF YOU'RE CONFUSED:


    Also I finally understand how Google Drives storage works thanks to comments in the most recent stream! Each file submitted is only counted against the owner's storage. So if everyone's google drive storage has 10 GB available, technically this means our project has 890 GB or storage!

    This is a huge revelation. This means that we can be far less restrictive with our storage. In short: If you have Google Drive storage available to save 20 WIP versions of your scene, you can do that. Whew I'm so glad I understand this now 😅

    Week 3 Homework & Update to Texture Parameters

    Week 3 is all about map baking and texture painting. In short the assignment is 4-fold:

    1. Unwrap UVs for your LO-poly model(s)
    2. Bake HI-poly details into two maps: Normal & Cavity
    3. Hand-paint a Color Texture Map
    4. Setup a material using these textures.

    Here's some parameters regarding Texture resolutions and file format. During the week 3 stream I said to keep texture resolutions small (1024, 512px). Ultimately I think the final version of these textures will need to be small like this, but 2 factors have changed my mind:

    • Such small textures look hideous up close. This is really lame for individual beauty renders of individual assets, which I would 100% want if I were you. In fact I intend to make that a final homework assignment: rendering a beauty shot of your asset. To accomplish this we need bigger texture resolutions.

    • Since we have more Google Drive storage than I originally thought, we can sync bigger textures! So long as you have available storage space.

    Therefore I am raising the cap on texture resolutions. I recommend a minimum resolution of 1024 for small assets (vase, lantern, etc) and as high as 2K (2048x2048) for larger assets.

    As for texture format, please save your NORMAL maps as 16 bit PNGs and your COLOR + CAVITY maps as 8bit PNGs.

    Save your textures in the TEXTURES directory within the sub-folders, the same way you've been doing with you .blend files: SPICE-VENDORS-HOUSE/TEXTURES/

    Please do your best to follow this naming convention: category_asset-name_username_TEXTURE

    • EX: acc_lantern_monaloren_COLOR
    • EX: acc_lantern_monaloren_NORMAL
    • EX: acc_lantern_monaloren_CAVITY
    • EX: nature_FG-tree-A_danitufi_LEAF-ALPHA

    Most assets will only need color, normal, cavity, and leaf alpha textures. But the exceptions will be the creek, clouds, etc. For such exceptions you can save whatever you need in terms of textures, just change the suffix part of the file name.

    ** IF you saved textures in the TEXTURE directory before the stream yesterday, I placed those textures in the _OLD folder. Please move those into their proper folder before continuing.

    Week 4 Buffer

    Week 4 was always intended as extra time needed to catch up and polish your assets. So if you're running behind on any of the home work do not worry! You're welcome / expected to use the last week in April as time to catch up.

    I'm grading based on the effort I see each week, relative to each artist. So long as you're submitting work that you clearly attempted each week, you get points and feedback.

  • Matt Dickun(az93) replied

    The  link for the discord is expired, how can I join the  group?

  • Karen Trevino(ketre) replied
  • yukino hatake(yukinoh1989) replied

    Hey guys, sorry i dropped out of previous stream, started to get high fever and had to go to the emergency hospital, i hope that by this weekend I will be able to move my arm. For now i first need a few more days time to get rid of the pain. Hope to see you all soon. 

  • splat21 replied

    Your health is clearly more important.  Wishing that you get better soon.  

  • yukino hatake(yukinoh1989) replied

    Thank you, this kinda do suck. Still hope i can finish along with you guys. Next week monday i need to go back for an update and check. 

  • spikeyxxx replied

    All the best to you, Yuki! 

    Please stay healthy.

  • Omar Domenech(dostovel) replied

    Dang Yukino, I guess this proves Belgium girls and tougher than Japanese Samurai's. Get well soon. 

  • adrian replied

    Get well soon yyukinoh1989 , We had a collection for you and got you these

    Hope they make you smile. See you soon.

  • yukino hatake(yukinoh1989) replied

    splat21 spikeyxxx dostovel and @adrian23 , thank you so much guys, lovely flower collection too, gonna need a nice vase to put them in ;).  And indeed i am tougher then any  japanse ninja, warrior or Samourai :p

    For now i still cant move my hand but the shoulder is someting i can move now. Still painfull but it can move so its a start. Ill keep you guys up to date. Good luck for all of ypu guys too.Â