Hi! You may have seen this, but we’ve got an open call for artwork for Antibody Club. See here:
is a virtual space designed to build connections in a socially-distant world. As a venue and public space. Antibody promotes local organizations through world-class art and music, offering a unique interactive platform for intimate social experiences. The 3d environment was built from the ground up merged with a webcam conferencing system. Antibody Club is built with A real-time 3D environment A secure video conferencing platform, with embedded webcams, chat, and proximity audio Seamless transitions between discrete scenes and “multiverse” instancing OBS and Mixler integration for high quality video & audio stream into the 3D environment Support for live streaming the experience to external platforms such as Twitch Interactive elements allowing for personal ads, link-outs, and branded integrations
~a note from our lead developer~
Hi, I'm Kevin Edzenga, the bugger doing the programming for Antibody Club. I've been a web head for much of my life, but my career has mostly been as a 3D graphics technical director for 10+ years. Having worked on a multitude of films, commercials, a couple games, and now Antibody; 2D and 3D adept. Proficient in Houdini and Maya (but there's a lot of crossover with C4D, Blender, etc.) If anything sounds outside of your wheelhouse, there's a good chance I've already made a tool to do the work for ya. (In Houdini most likely. I'm rather amenable to ideas, if something’s not available in Antibody Club, there is always a way. Feel free to ask any questions!
Since antib0dy.club is a real-time environment accessible on web browsers there are some basic efficiencies necessary when preparing a scene so it renders quickly and provides the best experience. The following sections communicate how to organize and prepare your Scene, Geometry, Textures, Animation, and Lighting. We’ve also outlined limitations and possible alternatives.
We’re here to help you with every step. We know that everyone uses different tools and has a range of knowledge and experience. If there’s anything you don’t see in our documentation, or you find confusing, or may need help with, we’re available to chat and determine the best way to exhibit your work.
Below is a list of supported artwork types and their associated file we can accept
*If there is an artwork or filetype that is not listed, just let us know and we can help guide the process to exhibit this work.
If you like, try this file to get started!
Scene Set Up
This is something that isn’t entirely required, but if setting up a full scene this is the best organization & process
Antib0dy.club is multiple interactive 3D environments. In order to allow users to navigate your environment successfully we’ve designed a method for setting up your scene. Please follow this organization since it helps us identify the elements in your project and reference them in our engine to create a seamless UX.
Set your scene’s up vector to Y (Ex. Cinema4D is defaults to Z as its scene’s up)
For the optimal user experience, it's best to have as few polygons and objects in your scene as possible. Please bake out, simplify, and instance geometry where possible. There is a reciprocal relationship between geometry and textures; the more polygons you have, the lower resolution and less textures the better. Likewise the more textures you have, the less polygons, the better.
All animated geometry must be baked out to individual files. Up to 200K triangles or less (Maximum 1 million triangles) Up to 150 objects or less - (Maximum 300 object transformations) Instance geometry where possible
Try simplifying geometry on your own. If you have trouble getting a satisfactory result we can help to reduce polygons on our end. Merge objects where you can. Check for Non-Manifold Geometry, Inline Points, and Convex Geometry. We can also run a clean up pass. Instancing: is a method of making a copy of an object, where it reuses the same geometry over and over to save RAM An example is many trees in a scene. Instance a single tree to simplify your scene. If each leaf on a tree is a separate object, merge all of these into a single object then instance the entire tree object. If you’re having issues with instancing your geometry or saving it out successfully, simply organize your scene file for the Antibody engine to instance it for you Blend-Shapes and Rigged characters are supported
Deformers are not immediately supported - if there’s something you’re trying to achieve we can discuss the best method
It is best to strike a balance between the amount of polygons and the size and number of textures in your scene. Overall its best to keep textures as small as possible to help your scene load & render quickly. Most of the standard texture methods & features are available, but there are some tricky and unsupported ones.
Ideal texture resolution is 1024x1024. Maximum is 4096x4096 Export textures as JPG for non-transparent textures For transparent textures, please export one Color Map texture, and one Transparency Map texture if possible Reuse textures where possible Use equirectangular environment maps for PBR shaders
All texture resolutions must be in powers of 2. Textures will be resized otherwise. Ex. 256x256, 512x512, 1024x2048, 128x16 etc. Use 2048x2048 for key objects Flat/Full Color (no lighting, no self shadows, 100% ambient/incandescent color) Lambert - self shadowing, no reflection Phong - self shadowing, light highlights, (blinn/phong style shading) PBR - environment map as metallic reflection (PBR / PBS / Stingray shading) Material/Texture Features Environment Maps - Equirectangular Cube Maps - Provide 6 different textures, px, py, pz, nx, ny, nz True Mirror Surfaces are possible but not ideal Reflective mirror surfaces are supported, but requires multiple render passes Use environment maps where possible If a mirror surface is desired, please use within reason, try to keep it to 1 surface. Let us know if you want a mirror surface, there is no automatic way to create this in your scene file, due to its impact on people’s devices.
Displacement Maps / Micropolygons Currently no access to Substance Designer, please export textures and provide the folder Targa, EXR, PSD, and other layered formats should be separated into individual texture files Float color space, like EXR, will be flattened to integer values UV space is 0-1; any 1-2, 2-3, 3-4 ... texturing will be lost Split these into new objects or apply multiple materials to the geometry Multiple UV Maps per geometry UVs will only be read from the primary UV map
Animation & Geometry Animation
The antibody.club engine interprets animation over time rather than per frame. Because of these we require any animation in a scene to be exported over time rather than position/scale/etc per frame. We can support some
Bake out geometry animations keyframes, not every frame Export keyframes as linear, ease-in/out, or easy-ease Object animations can be animation curves
Animation vertex count should be under 1500 Available Blended point / vertex attributes (More can easily be added, feel free to ask) Vertex / Point / Particle Color Rigged & animated characters are supported The less polygons the better, ideally under 5K use normal/bump maps to reduce polygon counts Make sure to use a format which supports blendshapes, FBX / ABC To make things easy on us, make a group containing all of your blendshape targets, for debugging purposes ( We’ll delete them pre-installation ) Geometry & Particle Dynamics / Simulations Baked simulations are supported, but must be exported on our end Any nCloth / Quoloth / Vellum / Cloth / Geometry / Particle animations should be exported as a per keyframe file sequence, in any standard file format - OBJ / FBX / ABC / GLTF / BGEO / AGEO etc.
Expressions / Scripted animation / Driven Keys Baked Fluid or Volume simulations Simulated Geometry - Cloth & Hair They exist, but the support is very limited; no self collision, limited constraints Fluid Simulations - Flip, FEM, Volumes, Fluids, Sand Rigid-Body / Soft-Body Dynamics / Bullet Solver
Lighting & Rendering Effects
Basic 3D lighting is generally supported. Although the experience is rendered in real-time, we cannot support real-time ray tracing, photon maps, ray traced shadows, or ray traced lighting.
Environment Fog is supported, and will be implemented by our team if required.
Not Supported (**solution & the works)
Live Sub Surface Scattering ** Live Photon Light Maps / Multi-Ray Traced Lighting ** Shadowing is Shadow Maps only