-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Possible duplication in the Project File Structure in the "My Setup" page #6
Comments
Hi there, first of all I'm happy you took the time to comment about this stuff. Working on this handbook which over time has become quite a big thing, means that many mistakes will go unnoticed by my two eyes, especially when spending a lot of time working on the pages, basic mistakes start to become drowned out. The things you mentioned should now be fixed / improved in the live version of the handbook. Also because of your other question, could you elaborate. When working between modeling software like Blender, ZBrush, Maya and ZBrush iPad I use one-click solutions in the form of transfer add-ons, more on that here: https://sidney-eliot.github.io/3d-artists-handbook/model-creation/workflow-between-zbrush-and-blender. For other software like Marmoset or Unreal I would have folders similar to what is now in the updated example. If you have any further gripes or suggestions for the handbook, I would be happy to hear them. You can either create an issue as you have here, or write me on discord, which is probably better for back and forth conversations (my discord id is: "epicrex") |
I just noticed that I might have gone a bit overboard on the example and it might now be hard to read. I'll maybe think of a cleaner way to show the folder structure. |
Hi, sorry for taking my time to answer, this week was crazy.
That's great! I just took a look at it, and I think it's going in the right direction.
Don't worry, this was indeed what I was wondering about. I believe that in the previous version, I didn't see any "transfer" folders for software that don't have a great import/export compatibility plugin/add-on.
Understood and noted, although I like leaving issue-related discussions on the repo of choice, for records, availability to others and posterity, I don't mind either way. I don't use Discord very often these days, but I'll look into getting back into it.
I thought about this too. In my mind, I have two suggestions. Suggestion 1Maybe splitting the top Projects directory and an example-project's directory into two sections? Like so:
|
Yeah I think you're right with this being better via issues. I don't have much time today, but I can quickly answer your last question. I very much try to never ever touch my C disk as I hate how windows clutters it up by automatically creating files and installing things into it and how folders like "Program Files" have a spacing. For my PC I mostly keep everything PascalCase and kebap-case for my NAS. But in both cases I often switch over to Camel Case with spacing at, or close to file path endpoints. Only ever of course if the software that will be using that doesn't have problems with it. This is something I have thought long about in the past and been on the fence for quite some time, thinking that it might be better to keep everything snake_case or kebap-case. But I eventually settled on a mix of what I mentioned above as I thought that there will anyway be some files that have spacing so why not give my eyes the satisfaction of nice folder names in non critical areas. It can make navigating around in terminals or using scripts a bit more of a hassle, but I find it to be worth it. |
@sugan-reden The file structure is quite pretty now. That purple block acts like normal markdown, so adding in spaces is a bit annoying. Also you can view the raw markdown files by switching to the v4 branch (The readme at the bottom describes which folders contain what) |
Heya, you bring up some nice points \o__o/
That's interesting, I do remember thinking the same way in the past. Nowadays, though, I got back to using the
Nice choices 👌
Interesting 🤔. When you say camelCase with spacing, do you literally mean with whitespace? Like this ->
That's nice 👍. May I ask for examples as to what software accept this?
I just saw, and I agree ^^, good work! 👍
Oh... I perhaps should have asked about this before, but how did you write the file tree? By hand? If so, then for next time -- if there so happens to be one -- you might be interested in the following resource (assuming you don't already know it): This one is only an example, there are more out there if you don't like this one in particular, it just happens to be the one I've been using lately for quick formatting 🌊. I also thought you could place literal blocks inside admonitions/callout blocks 🤔. But then again, I haven't gotten to using Quartz fully yet so I don't really know in this particular case.
Real nice, thanks 👍. Would you be open to pull requests? I may consider making some for next time I see something. I'd understand if not, this is still your handbook after all. That makes me think, this is beyond the scope of this issue, but have you ever considered forking the project and opening it to all (open contributions)? Or is that already how the current project is set up? |
Hi there Sugan
Stay strong and keep away from the evil yet alluring clutches of C 😉 But yeah it obviously also depends on how your PC is configured. I made sure to only buy a 500GB SSD for C. And have D, E and F each with a couple of terabytes
Pretty much all software accepts it (mostly the ones I come across that don't are small open source tool or script software made by a solo dev). But still core software structure should be in directories without spacing. But content for that software like a folder that contains add-ons for said software, really doesn't need to follow the strict no spacing policy and if it does cause issues, one can easily fix the folder name without breaking anything (the worst thing that could happen is that one has to set a new path). For folder where software or framework libraries are stored or things that are in the env path or linked to the windows registry, renaming folders isn't an option. So in that case one should assume folders with spaces will cause issues.
How I mostly do trees, is by creating the folder structure in the explorer, opening a terminal window and executing the tree command and then copying the result. But in this case I had to add lost and lots of Yeah that's a lot easier 🥲, thanks
If you look closely you'll notice that whenever I talk about a case, I use those two words to show the case in action. But maybe there's a proper name for that case, let me know if you know it.
None of that is Quartz related, it's all Obsidian. Quartz only helps host an Obsidian instance, by recreating the Obsidian project as a nice website.
I didn't really have the need until now as you are one of the first that has shown interest in contributing. In general I would be open to that. I would have to adjust my workflow a bit however, as currently I keep changes for some weeks up to months in my Obsidian and then push the changes. This is mainly because when I'm rewriting and overhauling pages or adding new stuff, and I push everything together there's often something that isn't done yet. (So maybe pushing pages alone is what I should be doing instead). I'm actually kind of embarrassed to admit this, but for this handbook I don't use any kind of version control software, all I use is the quartz built in sync command.
Not quite sure what you mean with that. Wouldn't those that want to push things create their own fork. And also forking is something that always works on every repo and can't be blocked Hey it's me again, a couple of hours after writing the stuff above. I have now set up GitHub Desktop and am kicking myself for not using it earlier for this handbook 😑. I also created a CONTRIBUTING.md as well as a CODE_OF_CONDUCT.md and updated the branch rules. Everything should be ready now to create forks and pull requests. Using a version control software now, also removes the issue I mentioned above where merging with changes from others would be a pain, and I will now also push single pages and small changes as soon as they are done. So why not give it a try. I'm sure you'll find some missing comma somewhere 😅 |
Heya!
lol. I think I will try to get back to trying that, at least with 3D software, maybe less so for programming and game dev software.
For sure ^^. Also, that sounds expensive, but also really cool ✨
That does happen lol 🙂
Mostly agree with this 👍. I this a case where you would enforce your own 'Camel Case'?
That's what I was thinking about. When I tried to install some 3D software on the
That is indeed a nice way of quickly checking the layout of a select directory. It's how I still do it in some cases where I want something visual, or to check if I laid things out the right way when checking docs, etc.
👍
Haven't found a proper name for that yet, so I'll just say x case with whitespace lol, or write them auto-logically.
I did wonder if you were writing auto-logically or not. Now I know. 👌 However, knowing this, in this case:
I believe the Camel Case you mention would actually be whitespace Just so we're on the page, I searched this as a source: https://en.wikipedia.org/wiki/Naming_convention_(programming)
Ohhh I see ^^ Nice! I was wondering about the specific usecase parts of Quartz. Knowing this, would I be correct in assuming it uses Obsidian's markdown parser for content?
Woot! Nice ✨ ^-^/
We could definitely try to figure that out as we go. I'll adjust to your release cycle.
Oh! I didn't know Quartz managed up to that point ^^. Thinking about it, it does make sense though as -- as I understand it -- it is primarily meant as a done-and-go instance publisher for your Obsidian vaults, yeah?
This really is my bad, I kinda brainfarted on the wording of this. What I meant was, what you do think about splitting/dissociating and opening the project as a community project? Something like: graph LR;
A("Current 3D Artist Handbook");
B("Your '3D Artist Handbook', linked to your personal Obsidian notes");
C("Contributions/Community Open '3D Artist Handbook', initially duplicated from your notes, but not necessarily linked to your notes");
A-->B;
A-->C;
In the sense that you would still be able to keep you notes isolated. I'm not saying that this is something to do, I'm just asking about this because I am wondering what you think about keeping your notes personal to you, as opposed to opening them up for anyone to edit.
Heya! 🤯 That's great to hear!
Definitely going to try it! 😁 |
Hey Sugan,
Not if you consider that most of them are HDDs.
I guess. If I were a robot 🤖, I would always use kebab-case, but I like keeping things nice and appealing when possible, as long as it doesn't come with too many drawbacks. It's like treating yourself to something that isn't essential.
Firstly, always try to install portable versions of software if they are offered for download, this will result in 0 bleeding and has the added benefit that you don't have to re-install them when you re-setup your OS in the future. Secondly, Windows will for basically every software that is installed on other disks also add some files to C, which one can mostly ignore. Some software will, however, save stuff like preferences to C, in which case you can mostly go into the software's preferences and reroute the path, preferably to a folder on your D that focuses on preference files and is protected by some sort of scheduled backup (in some cases I have also had success in re-routing software data paths by editing local config file variables that were not exposed in the software UI's setting window. A quick browser search for the respective software should yield results). As you've been asking a lot about my file structure, I can quickly break it down. C: Windows The reason why splitting out everything that is important to one disk, is that it makes it incredibly easy to back up everything while keeping the backups as mall as possible by preventing bloat like installed software and other stuff like that to make its way into the backups. Then I use UrBackup to perform scheduled differential backups of my entire D disk to my NAS server. Btw, ludusavi is great for backing up software and game saves / configs automatically to a specific folder.
Just looked up a list of cases and the proper name it Title Case.
Yeah, quartz offers the sync command which does everything for you, but I now see that I should have never used that and stayed with regular version control tools instead. 😔
Oh, a flow chart, that's a rare sight in markdown, almost as rare as mermaids 🧜♀️.
Not sure if this still needs answering at this point. Also, I'm getting a bit hung up about the term community project. Isn't a public repo that allows for pull requests a "community project". Furthermore, in regard to:
I will be strict with what makes its way into the live pages to keep up the quality standard. But my guess is that people who read some of the pages and want to contribute, will understand what quality standard is required based on what they've seen. And of course, there is no harm in people "experimenting" around inside of work_in_progress (I also just noticed that I should change the underscores to dashes in that folder name). Also, this workflow of collaborating with others might change over time when more people start collaborating, but currently it's only you, so we don't need complex politics at the moment 😄 Cheers |
Heya Sidney,
Ohhh, that's right, I didn't think about that. Did you go for setups like the Sinology stuff? Or custom?
I see 🤔. I will probably have to rethink my naming workflow for 3D a bit. Pondering pondering... 💭
I didn't know 3D software offered this option, only heard of it before for programming, open-source and other software ^^. I'll definitely be looking into this 👍.
I'll be looking into this too! 👍 I can't let my skill issues win after all. Thanks for this :)
Thanks for the example illustration, it helps my brain a bit :)
That makes sense lol It really was right under my nose 😄. Would you use the Chicago here too?
I think using the
I know right? :) By the way, they're in Obisidan/Quartz if you ever wanted to use them! (I haven't seem them on the site yet, please disregard this if I'm wrong oops).
You are completely right here. I think that what I really wanted to confirm is if you were comfortable with this project becoming less and less "personal" to you the more people contribute to it in the future.
oops 😄
Agreed 🙆♂️ Cheers 🍻 |
Heya! There may still have some discussion to continue here, but as for the initial issue, I think it was mostly solved so I think I will close this 🫡. Cheers 🍺 Closing |
It's funny, you remind me of a tip in a game that hints at there being more important dialogue with a specific npc. But yeah, I was still planning on replying to all loose ends
Yeah, I know that's the joke, the flowchart framework used in Obsidian, among other places, is called Mermaid charts
A friend has been trying to drag me to a bare-bones setup, but for now, I'm very satisfied with True Nas Scale. My setup might seem a little crazy at first, being 2x 16TB HDDs, but basically, I use a mirror raid setup, then a lot of the space goes to my URbackup backups. Besides that, I use it for all kinds of stuff like external storage, a place to store old projects, run a multitude of docker containers and perhaps even for less legal things like a jellyfin instance with shows, anime and movies but that's just some hypothetical thing I'm talking about and surely not doing. (And staying theoretical here, I, personally, find it quite important as an artist to be able to quickly reference interestingly done parts, cinematography, or even just basic stuff like lighting of shows and movies. For example, if one wants to animate or pose some cool stuff, JoJo is a great place to get inspired by.) To get a bit more technical, one of the pros of TrueNas Scale is that it's ZFS based, also recently as of Electric Eel version, they switched from Kubernetes to docker, making it now, in my opinion, hands down the best option for running your own server (although I now anyway use dockge for docker container management). Or you go the bare-bones route where you control the server via terminal commands and helpful docker container exclusively, which also has some advantages. Although I recommend waiting until Electric Eel version is fully released as it's currently in beta and this has some bugs (production-ready release will maybe be out in about 3 months or so) Here's an image from the day I built it together Cheers 🥛 |
😆 *hmm, yes yes* ... this may or may not have been on purpose. x)
Ah yes, that is also what I meant, lol. 🤯 Damn, that's an impressive setup 😎. It looks awesome too, nice 👍.
Ah yes, the good stuff ✨, hypothetically.
Indeed 😆. *while striking awesome pose* 👓*
Understood, I'll gladly take your word on this and consider it, as I am looking into investing into my own home server, but am still gathering the funds so I can hold on with what I have in the meantime without too much pain. My brother got his own custom one from spare parts his university was about to throw away or sell, but he now has a bit of trouble with upgrading and maintaining it, as well as managing the space it needs since he recently moved to an apartment, granted they were business/industrial parts. Cheers 🍸 |
I see, I 🌊.
Excluding my disks, my server was about 400$ (and I also already had an old cpu lying around), but a big part of that was the case, sitting at around 140$, and the only reason I went with it was because as soon as I saw it I fell in love with its clean, continuous shape Cheers 🧋 |
Noice x)
I'm not entirely sure I understand this sequence, oopsi 😆
That's impressive! ^^
Oh! It's been a while since I heard about Jellyfin. When my brother was first installing his, we talked about it a bit, but that was a while ago already. Cheers 🍷 |
Hi!
I just found your site through the Quartz Showcase, and as both a 3D Artist and a programmer/game dev myself, I was quite happily surprised.
Truly a humongus treasure trove. A huge thanks for your tremendous work, it will definitely prove useful to me in the future.
Now onto the issue at hand.
I may be wrong here, but like the title says, there seems to be a typo/duplication in the Project File Structure presented.
Unless, that is, you do really use a file structure with two directories named "Blender"?
If it is so, then I would like to inquire about the reason, by curiosity.
Included this for good measure.
Sidenote:
This makes me think there may be another typo in the hardware section below, in the Huion Kamvas point, currently named "Kamas".
Out of context, but related:
Also, forgive me as I have not read all of it yet so the following may come out of ignorance, but I would like to know how you handle projects that are multidisciplinary, in terms of workflow. For example, projects that go through the whole suite/process of software in production.
Do you leave to them to each their own software directory, or have a temporary file transfer/conversion directory to transfer files to other software?
I would also like to know what the nesting level under this looks like (Level 2/3?).
And, as a suggestion, what would you think about including example/dummy files to show an example of how you organize your files in directories further below.
Something like this perhaps:
Thank you for reading me :) And good day to you ☀️
The text was updated successfully, but these errors were encountered: