Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411429 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 02:42:31 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogs???name??? [ Zelda64-Like in Tokyo ]
Pages: 1 ... 7 8 [9]
Print
Author Topic: ???name??? [ Zelda64-Like in Tokyo ]  (Read 56247 times)
JobLeonard
Level 10
*****



View Profile
« Reply #160 on: January 14, 2019, 07:09:33 AM »

EDIT: Anti-Paging quote

@NajibSG: Thanks! Still a WIP, working on detailing atm.

@JobLeonard: Coming form an architecture school, "Urban" and "Urbanism" have always been super neutral and disciplinary sounding to me, but maybe they mean something else to others? You are totally right, Sentimental could take care of those negative sprawl connotations, or at least create an interesting tension between them. LOL what if we just go crazy with alliteration and do "Sentimental Sprawl Stroll Simulator". I wonder what the difference is between a walking simulator and a stroll simulator...

"A Blade Runner sequel where Deckard just walks around the city trying different ramen joints"



Thanks for the follow, I try and keep it mostly game related, but there's the occasional code, beats, and architecture projects from friends too!


Sentimental Sprawl: A Chillbeat Strolling Simulator

Quote
I wonder what the difference is between a walking simulator and a stroll simulator...

The alliteration

Strolling is more street.

Actually, I think "strut" is more street than "stroll" or "walk".

Strutting Simulator

Swagger Simulator (oh god that's terrible hahaha, please don't use this Tongue)

Ok, this is getting completely off-topic but I can't hear the word "strut" any more without thinking about this clip:





It used to have a comment that said "That is how you strut!" and somehow that always stuck with me because I thought it was hilarious that someone looks up to Harold Shand's character as a role-model. Not exactly the mood you are going for though Wink
« Last Edit: January 14, 2019, 08:38:58 AM by JobLeonard » Logged
archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #161 on: January 20, 2019, 02:13:17 PM »

For 2019 I've been trying to focus on a different aspect of the game each month (previously we had quarterly focuses, but i felt that things were getting lost). For this month, I'm trying to determine the level of detail needed for the city's vernacular buildings. Once I have a few analog examples, I'll work on auto-generating it as I've done for the rest of the city. This is really the first time I've gotten into texturing, so if anyone has any advice, I'm all ears (same with mesh modeling, I'm coming from a background in NURBS modeling for architecture, so I'm a relative noob at mesh modeling too).

Here's a side by side of the old (bottom) and new (top). It's significantly more polygons and textures, but obviously have to start somewhere. I'm happy with this density of detail for the building. I'm not set on the pixel textures, they were just the easiest textures to block out. After making this, I'm thinking more about what the style of the environment will be. I think this is a good base to work from, but now I want to get the feeling right for the game, it's supposed to have a soft-cyberpunk feel, with a splash of surrealism/pomo in there too. How have ya'll experimented/iterated/decided on environmental styles for your games?



Logged

JobLeonard
Level 10
*****



View Profile
« Reply #162 on: January 21, 2019, 01:04:46 PM »

> NURBS

There's an Urban pun in there somewhere, I just know it Tongue
Logged
archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #163 on: January 28, 2019, 07:30:22 PM »

@JobLeonard: NURBIN Sprawl (the sad part is I don't actually use NURBS so much in making the city, the whole workflow is pretty convoluted, I'll explain it over the weekend more).



Still working on some examples of detailed buildings in the city. I took neko.works advice and added some ambient occlusion, but it still feels lifeless and flat in a way. I think going forward I'm going to have one moving item on each building to make the city feel alive and continue to play with color grading. Another weird thing I noticed was that the exact same emissive material can be on two different meshes and have very different emissive intensity depending on what mesh it is on, does anyone know what this is about (bottom right image)? Also, I've UV-Light Mapped my imported meshes, but I'm not seeing a big difference even with things set to static.




I'm posting a kickstarter update on Friday with the main goal being comparing old and new vernacular architecture.

I went to LA Game Night last night and had a good time. Most the games were pretty polished and I feel mine isn't ready for something like that yet. Does anyone know of any good playtesting meetups in LA that are more conducive to very WIP builds?

I'm also still working on the rendering style. I'd like something more illustrative, like a ghibli background, but I also enjoy saturated flat colors, so any visual feedback towards this end is most appreciated!
Logged

JobLeonard
Level 10
*****



View Profile
« Reply #164 on: January 29, 2019, 12:48:04 AM »

Quote
NURBIN Sprawl (the sad part is I don't actually use NURBS so much in making the city, the whole workflow is pretty convoluted, I'll explain it over the weekend more).
M'NURBIN *tips fedora*

Quote
Still working on some examples of detailed buildings in the city. I took neko.works advice and added some ambient occlusion, but it still feels lifeless and flat in a way.
Well, it has no other actors except the player, making it feel like a ghost town. You can't solve that with architecture alone, you need other living things moving about!
Logged
archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #165 on: January 30, 2019, 08:26:05 AM »

@JobLeonard: I have a spreadsheet that details out all the neighborhoods of the city, including occupancy, but alas the one part of gamedev I don't have technical skill in is animation! Maybe I'll have to finally learn. I've always wanted each neighborhood to have a really distinct group living there, sort of like the goron and zora in the zelda series, but then as the city changes, these different populations begin to mingle based on how the player has changed the city.




Still pushing to get all my examples done by Friday. I'm still worried about the flatness of everything and I've also become slightly concerned that I might be getting too repetitive with the type of detail I'm applying (also the mesh edges are a bit hard yeah?). I need to find that flow wherein one is sort of bored and it forces new creations.

If you can name where all the signs come from I'll send ya a free demo of the game (jk, i'll send the demo just dm me).

Another thing I've noticed is that it's hard to tell the foreground from the background and I'd really like to create a shakkei effect, so I think I'll add a distance parameter to the urban city shader so that I can control the buildings farther away differently. I probably won't get to this until next week though.
Logged

archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #166 on: February 01, 2019, 10:52:07 PM »



Coming from the world of architecture, I've always been more comfortable modeling in Rhino and Grasshopper than Unity (not to mention that the scene navigation camera makes working in the interior sphere very difficult to navigate and Unity was going through a number of versions and the placed models would break their links, and since I've created the octree loading system, the city is fragmented into a number of scenes, while it is still a single file in Rhino), however Rhino has certain limitations as far as types of objects unity can import. To circumvent this issue, I've made some editor tools that help us translate information from rhino into Unity. I've provided the source code for anyone looking to begin making their own editor tools at the bottom. In the images you can see that the tools take points and lines from rhino and turn them into lights in unity, while also taking surfaces from rhino and turning them into climbing surfaces in unity by making their origin point not 0,0,0 and adding the required colliders and materials. I've made a number of other scripts, but most of them aren't Unity focused, but more focused on automatically exporting meshes from rhino and putting them in the right location within the Unity project. (also made a few gifs showing the before and after detailing of the architecture).




Code:
using System.Collections;
using System.Collections.Generic;
using System.IO;
using UnityEngine;
using UnityEditor;

namespace RhinoInside
{
    public class RhinoIn : ScriptableWizard
    {
        #region MenuItem
        //[ExecuteInEditMode]
        [MenuItem("Window/Rhino/Lights")]
        private static void RhinoLights()
        {
            Debug.Log("Rhino/Lights");
            //CSV structure: Light Type, posX, posY, posZ, rotX, rotY, rotZ, scene, R, G, B, Intensity, Optional: EposX, EposY, EposZ
            List<string[]> parsedData = parseCSV(Application.dataPath + "/LIGHT.csv");

            //set up parent
            GameObject parent = new GameObject("Lights");

            for (int i = 0; i < parsedData.Count; i++)
            {
                Debug.Log("parsedData.Count: " + parsedData.Count);
                string[] row = parsedData[i];
                if (row[0] == "Point") //instantiate point light from csv info
                {
                    GameObject obj = InstPointLight(
                        float.Parse(row[1]), float.Parse(row[2]), float.Parse(row[3]),
                        row[7],
                        float.Parse(row[8]), float.Parse(row[9]), float.Parse(row[10]),
                        float.Parse(row[11]));
                    obj.transform.SetParent(parent.transform);
                }
                else if (row[0] == "Spot") //instantiate spot light from csv info
                {
                    GameObject obj = InstSpotLight(
                        float.Parse(row[1]), float.Parse(row[2]), float.Parse(row[3]),
                        float.Parse(row[4]), float.Parse(row[5]), float.Parse(row[6]),
                        row[7],
                        float.Parse(row[8]), float.Parse(row[9]), float.Parse(row[10]),
                        float.Parse(row[11]));
                    obj.transform.SetParent(parent.transform);
                }

            }
        }

        [MenuItem("Window/Rhino/Climbing Surfaces")]
        private static void RhinoClimbingSurfaces()
        {
            Debug.Log("Rhino/Climbing Surfaces");
            //CSV structure: Name, posX, posY, posZ, LookX, LookY, LookZ, UpX, UpY, UpZ, scene, width, height
            List<string[]> parsedData = parseCSV(Application.dataPath + "\\CLIMB.csv");

            //set up parent
            GameObject parent = new GameObject("Climbing");
            PhysicMaterial NoFriction = null;
            string[] filenames = Directory.GetFiles(Application.dataPath, "*.physicMaterial", SearchOption.AllDirectories);
            for (int i = 0; i<filenames.Length;i++)
            {
                if(filenames[i].Contains("NoFriction.physicMaterial"))
                {
                    NoFriction = (PhysicMaterial)AssetDatabase.LoadAssetAtPath(filenames[i].Replace(Application.dataPath, "Assets"), typeof(PhysicMaterial));
                }
            }

            for (int i = 0; i < parsedData.Count; i++)
            {
                string[] row = parsedData[i];
                GameObject obj = InstClimbingSurface(
                float.Parse(row[1]), float.Parse(row[2]), float.Parse(row[3]),  //position
                float.Parse(row[4]), float.Parse(row[5]), float.Parse(row[6]),  //look at vector
                float.Parse(row[7]), float.Parse(row[8]), float.Parse(row[9]),  //up vector
                row[10],                                                        //scene
                float.Parse(row[11]), float.Parse(row[12]),                     //width/height
                NoFriction);                                                    //phsyical material
                obj.transform.SetParent(parent.transform);
            }
        }
        #endregion

        #region Instantiation Functions
        private static GameObject InstPointLight(float posX, float posY, float posZ, string scene, float R, float G, float B, float Intensity)
        {
            GameObject obj = new GameObject("PointLight");
            obj.transform.position = new Vector3(posX, posY, posZ);

            Light light = obj.AddComponent<Light>();
            light.color = new Color(R, G, B);
            light.intensity = Intensity;
            return obj;
        }

        private static GameObject InstSpotLight(float posX, float posY, float posZ, float LookX, float LookY, float LookZ, string scene, float R, float G, float B, float Intensity)
        {
            GameObject obj = new GameObject("SpotLight");
            obj.transform.position = new Vector3(posX, posY, posZ);
            obj.transform.LookAt(new Vector3(LookX, LookY, LookZ));

            Light light = obj.AddComponent<Light>();
            light.color = new Color(R, G, B);
            light.type = LightType.Spot;
            light.intensity = Intensity;
            return obj;
        }

        private static GameObject InstClimbingSurface(float posX, float posY, float posZ, float LookX, float LookY, float LookZ, float UpX, float UpY, float UpZ, string scene, float width, float height, PhysicMaterial mat)
        {
            GameObject obj = new GameObject("ClimbingSurface");
            obj.transform.position = new Vector3(posX, posY, posZ);
            obj.transform.LookAt(new Vector3(LookX, LookY, LookZ), new Vector3(UpX, UpY, UpZ));

            obj.layer = LayerMask.NameToLayer("Climb"); //make layer climb
            BoxCollider col = obj.AddComponent<BoxCollider>();
            col.isTrigger = true; //check is trigger
            col.material = mat;//add NoFriction material to collider
            Vector3 size = new Vector3(height, width, 0.01f); //create vector for box size
            col.size = size;//set collider height
           
            return obj;
        }
        #endregion

        #region Generic Functions
        public static List<string[]> parseCSV(string path)
        {
            //https://danashurst.com/parsing-a-csv-file/
            List<string[]> parsedData = new List<string[]>();
            using (StreamReader readFile = new StreamReader(path))
            {
                string line;
                string[] row;
                while ((line = readFile.ReadLine()) != null)
                {
                    row = line.Split(',');
                    parsedData.Add(row);
                }
            }
            return parsedData;
        }
        #endregion
    }

}

Still haven't decided on a name for the game yet. I'm going to go back to working on the urban materials and shaders before I dive deep into lighting.
Logged

archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #167 on: March 01, 2019, 10:07:31 PM »



Since day one, I've wanted the city to change as the player moves around between different neighborhoods, building relationships between characters and communities. A lot of development went into this aspect of the game, but it’s finally in place! For fans of combinatorics, there are now roughly 200,000 different “cities”, depending on how the player connects and unlocks the world. On the technical front, I managed to do this with roughly 740 scenes in Unity, which is good news for performance and management. The state of the city is part of the save file as well as the story tree, meaning characters will know what state the city is in! If I'm pushing the limits of Inkle it doesn’t seem to be showing. Currently the different states are marked by “?” buildings, next month will be spent upending conventional structure and turning these buildings into surreal and whimsical architecture.



I've continued to work on the urban shader, trying to find that nice balance between twinkle and sublime. We need to balance inspiration and information for players traversing the map. I'll need to keep tweaking this, the textures, and the topography material until it has the feeling I'm after, you know that "look at all that city to explore" feeling.



As a reward for keeping on track this year (and completing some day-job related things) I'm rewarding myself with a weekend of anodyne and minit! I'll be tweeting for #screenshotsaturday tomorrow, RTs, Likes, and Follows always appreciated!
Logged

archgame
Level 2
**


I program architecture and build video games


View Profile WWW
« Reply #168 on: April 02, 2019, 06:02:28 AM »





Over the last month I’ve been taking the detailed vernacular architecture I made in January and creating systems to instantiate it throughout the city. The new system allows fast switching between hand-modeling and automatically populating to give the city a natural-but-dense feeling. The key challenge in automatically populating the city is making sure the hand-modeled designs scale appropriately when applied to variously-sized massings. Overall, the city is developing distinctive street-level and rooftop environments for each neighborhood.



Whereas most games give you new weapons or skins as you progress, in this game you progress by unlocking new architecture! This special architecture isn’t just for looking at or jumping on. It changes the behavior of each neighborhood’s community. Ultimately, this progressive architecture builds a narrative of neighboring communities coming together through design. This is key to the multiple cities generated by players, with results that aren’t simple binary win and lose states, but ones that allow you to design the city you are interested in. I’ve sketched a number of surreal and fantastical architecture concepts and hope you enjoy the narrowed down selection which will be modeled for the game.



Next quarter I’ll be focusing on gameplay while continuing to develop the art style, First I’ll be tackling Textures/Lighting and UI. Homemake is growing from an urban sandbox into an episodic, story-centric game, and dialogue interactions are key to the gameplay and immersion. The right UI and player interactions will make the city feel alive with a diverse and quirky citizenry. Textures and lighting will help us further define the atmosphere of each neighborhood and provide a holistic artistic direction.



As always, images will continue to be posted on our twitter! Follow here for updates!

Likes and retweets continue to be greatly appreciated!

Logged

JobLeonard
Level 10
*****



View Profile
« Reply #169 on: April 02, 2019, 06:21:53 AM »

Love the hand-drawn sketches! (also the rest, but the sketches are new Wink )
Logged
Pages: 1 ... 7 8 [9]
Print
Jump to:  

Theme orange-lt created by panic