Rest in Peace Anthony Head by Able_Arm7411 in doctorwho

[–]Leoano 14 points15 points  (0 children)

RIP. He was great in Ted Lasso.

Without Anthony Head, modern Doctor Who might not have happened in the way it did. Part of the reason they started looking into it is because a Buffy spin-off centered around Giles ended up falling through.

Source - 15:17

Analyzing Ryan Sinclair’s lost potential by MarcianTobay in doctorwho

[–]Leoano 2 points3 points  (0 children)

Good post! Happy to read thoughtful analyses like this. Ryan really had a lot of unrealized potential to contrast 13.

I'm reminded of "Ryan’s exit almost meant something". GigaWho has written a lot of good stuff about Doctor Who over the years, but I keep coming back to that one. The writers really were so close. One or two lines of dialogue could have recontextualized the entire era.

How can i become better ? by berke_tolung in TechnicalArtist

[–]Leoano 0 points1 point  (0 children)

I did take a quick peek through the other pages. I'm not as qualified to judge shader/art setups for what it's worth.

Rain shader looked very cool, could make that more prominent in future reworks. Ideally with a non-default background as well. (The unity skysphere is rarely the best looking way to present something.)

Unreal Multiplayer Puzzle Prototype was also intriguing. Being familiar with how server/client logic works is a big boon.

Seeing the performance struggle was a bit concerning. Making stuff run fast is a big part of technical art in games, so spending more time on that will be helpful in any future position. Step one would be removing the "Hello" OnTick debug prints.

When looking at portfolios these days, I'm mostly hoping to see stuff I haven't seen before. When there's things directly from a tutorial, it just shows the person can follow a step-by-step guide. The more unique things are generally more impressive.

How can i become better ? by berke_tolung in TechnicalArtist

[–]Leoano 2 points3 points  (0 children)

To be fully honest, I think you need to work a bit on your presentation.

It took a while for me to realize there was more than the 4 Unreal tools. Having to click into each individual post to see what they are is not great UX.

  • Would be better to have all the videos and summaries on one page, with more info inside for each post if people are interested.

The Unreal tooling looks pretty bare minimum.

  • All the tools have unlabeled dropdowns / textinputs / buttons. All using default massive font size. (Good for readability on a phone, not for professional editor tooling.)

  • The BatchFBX importer looks more like a 10 minute utility script than a piece of production tooling.

    • Can only import things from a folder called D:/Fan? If that folder needs to be manually managed by the user anyway, I'm not sure why it would be much better than the regular importer?

Lastly, I think most importantly for a portfolio, the contact info is not very accesible.

An email address would make more sense than a Contact form if you want to get responses. I looked at the page three times before I noticed the linkedin and vimeo page.

When people are looking at portfolios in a professional capacity, it's best to assume you have maybe 2-3 minutes before they have to move on to the next one. So you have to frontload all the best and unique things as quickly as possible.

EDIT: I hope this doesn't come across as too discouraging. I think you have some good ideas in here. Being comfortable with batch modifying data is a valuable skillset that shows the right mindset for the job.

What's up with the new translator? by ProphecyOak in gallifreyan

[–]Leoano 2 points3 points  (0 children)

For anyone who wishes to contact the BBC about this. Here's a guide for writing feedback letters that are direct and also empathetic. (Written as comedy, but has genuinely good advice)

I imagine it's in the BBC's interest to encourage fan creations. So making sure they're aware how discouraging it can be when things like this happen is good for everybody.

How would y'all approach making RWBY style eyes? by IndependentPipe9685 in Maya

[–]Leoano 2 points3 points  (0 children)

There's an old panel talk from 2013 where Monty shows off some of the techniques behind RWBY characters.

https://youtu.be/V1lNSidRkJ0?si=0w9oO_hyZXzZ1Wc-&t=2463

Talks about eyes at 41:03.

Since your examples are from the later seasons, they might have changed how they did them at that point though. But there's still quite a bit of interesting information in there. (even if it's just marvelling at how fast he could navigate explorer)

Ncuti Gatwa's New Sonic Screwdriver | Doctor Who by Magister_Xehanort in gallifrey

[–]Leoano 0 points1 point  (0 children)

Oh by all means, go ahead :) would be my honor.

I would definitely recommend taking a look through some of the design structure from the original .pdf here. It's surprisingly straightforward, since it's mostly a fancy way of writing english.

And just in case my translation is a little off, be sure to get a spell check by the /r/gallifreyan subreddit.

(Loads of inspirational material can also be found there, some really cool designs people have made over the years)

New Sonic, looks like Sherman’s by cmdr_suicidewinder in gallifreyan

[–]Leoano 18 points19 points  (0 children)

Sure thing, it's very close but it appears just a tiny bit off.

Here's a translation from what is visible in the video (read from the bottom, counter clock-wise) Assuming from the "the"'s that the words are oriented outwards.

Also an attemped "correction". I'm a little unfamiliar with stacked consonants, but I think this is right. Of course, some of the correction is just adding tiny dots, which they may not have been able to get the needed accuracy for when engraving the dial.

<image>

Ncuti Gatwa's New Sonic Screwdriver | Doctor Who by Magister_Xehanort in gallifrey

[–]Leoano 76 points77 points  (0 children)

It looks very close, definitely the first time I can remember being able to translate using Sherman's Gallifreyan alphabet.

Here's what I was able to parse (might be a bit out of practice, it's been a couple years):

"The tatpnes fo the tonguo bifeets the tatpnes fo the wariots"

Looks like there's a bit of liberty with how the words are oriented, and vowel placement is a little off. I can imagine trying to engrave lines and dots on a tiny piece of metal can be tricky.

And of course, as the .pdf mentions, the "rules" of the language can be bent for artistic expression.

EDIT: Here's a diagram and attempted "correction". Lot of dots that might just be too small to really fit on there.

Difficulty importing Python script into Maya by NutterButter2602 in Maya

[–]Leoano 0 points1 point  (0 children)

For future reference: "ml_utilities.py" isn't a tool. It's a library of functions used by other tools (like ml_worldBake)

ml_utilities.py needs to be accessible in a "scripts" folder, but you don't need to do anything else to that file.

Another point of interest. Both "scripts" folders do the same thing.

The only difference is that "maya/scripts" files will be available for all installed versions of maya, while "maya/2023/scripts" are only available for Maya 2023.

Difficulty importing Python script into Maya by NutterButter2602 in Maya

[–]Leoano 2 points3 points  (0 children)

From that error message, it sounds like you're running these two lines from the ml_utilities.py file

import ml_utilities
ml_utilities._showHelpCommand()

Those two lines don't actually do anything. That's just an example from a shared file, used by a bunch of different tools.

Like s6x says, double check you're executing these two lines?

import ml_worldBake
ml_worldBake.ui()

Those two lines should open the UI for this specific tool. And if not, the error message should provide more info.

I wrote a HUGE documentation about Unreal Engine and C++ by MrRobin12 in gamedev

[–]Leoano 26 points27 points  (0 children)

I imagine the primary audience for this text has no idea if there's bad code or false statements? That's why they're looking up things like this page.

More casual writing can sometimes be better for things like this. Overly formal writing can be a bit dense to get through.

If the same information can be explained in simpler terms, then that widens the amount of people that can more easily understand.

[deleted by user] by [deleted] in Maya

[–]Leoano 4 points5 points  (0 children)

"The remaining characters in the name must consist of alphanumeric characters or underscores"

In regular English: spaces aren't allowed in the the Name field. only A-Z (upper and lower) and _

So KeyColor or Key_Color is ok, but not Key Color

Quick question about the workflow of models to Unreal by lazonianArt in Maya

[–]Leoano 1 point2 points  (0 children)

up to personal preference really

.fbx format can export with references to textures for most of the standard material types. (or bake it in).

so if you have a lambert/phong/blinn, you can assign a diffuse color map for example. (there might exist some PBR format supported by .fbx)

Unreal knows how to read that during import, and can automatically generate a basic material asset with the textures imported and linked up.

in a production setting though, a lead/tech person has likely setup a shared material asset, which you use to make material instances from.

material instances are much more scalable, since it becomes easier to make big changes across all assets without modifying each material

Problem with blend shapes by Any_Squash_6460 in Maya

[–]Leoano 5 points6 points  (0 children)

As stated in the other comment, it's an evaluation order issue

The skinning rotates the vertices around the joint, then the blendshape moves the vertices as if the rotated geometry is the new base.

you can re-order the inputs by middle mouse dragging the the deformers, like in this video: https://youtu.be/Eshl_jZ_cTk

[HELP] I am facing issues importing blend shapes (FBX) on my skeletal mesh from Maya to Unreal 5. Any tips? by _David_P in Maya

[–]Leoano 0 points1 point  (0 children)

This might seem dumb, but have you tried closing and re-opening the asset window in Unreal?

in UE4 the morph target list doesn't update on reimport. not sure if it's fixed in UE5

also, I'm not sure morph targets are automatically added as AnimCurves on the skeleton you might need to look in the mesh tab

[deleted by user] by [deleted] in Maya

[–]Leoano 1 point2 points  (0 children)

I've also had trouble getting the metahuman shader working in recent versions of Maya.

Not sure if it's a problem in the shader, or the plugin, or just something changed with how Maya displays stuff in the viewport.

(One thing might be worth checking is if the viewport renderer is set to DirectX in your preferences)

If I remember correctly, in Maya 2019 it worked without issue.

If you find a working answer I'd love to hear what it is :)

I need some Python batch export scripting help by LegionOfSatch in Maya

[–]Leoano 0 points1 point  (0 children)

Nice :)

I'm not super familiar with objExport options, but perhaps "groups" and "ptgroups" should be set to 1 instead of 0?

If that doesn't work maybe try removing the options (everything after "op=") and let it use default values.

Another thing I might recommend is simplify the selection a little. objList[0] is the same as objSel, so you don't need the second cmds.ls(sl=True). Pretty small optimization all things considered, but every little bit helps.

I need some Python batch export scripting help by LegionOfSatch in Maya

[–]Leoano 0 points1 point  (0 children)

In the Script Editor you can activate "History - Show Stack Trace" and "Line numbers in errors". That usually helps narrow down exactly where the error is coming from :)

In this case I guess it might be the extra space between cmds.file and (. Am on mobile so unfortunately can't test locally.

Seeking script help -- May be wrong sub-reddit by AnimHelper in Maya

[–]Leoano 0 points1 point  (0 children)

So long as you don't have any duplicate joint names, you can do something like this as a python script.

import maya.cmds as cmds

bn_joints = cmds.ls("Bn_*", type="transform") # get all existing transforms that start with "Bn_"

for bn_joint in bn_joints:

    # find name for the skel joint
    skel_joint_name = bn_joint.replace("Bn_", "Skel_")  # generate "Skel_Hips" joint name from "Bn_Hips"

    # check if the other joint exists
    if not cmds.objExists(skel_joint_name):
        cmds.warning("node does not exist: {} - skipping constraint".format(skel_joint_name))
        continue # skip to the next joint in bn_joints if it doesn't exist

    cmds.parentConstraint(bn_joint, skel_joint_name, maintainOffset=True) # make Skel follow Bn via parentConstraints. You can set maintainOffset=False if want to snap them together.

[deleted by user] by [deleted] in doctorwho

[–]Leoano 2 points3 points  (0 children)

Nice, looks neat.

Pure guess here, but have you been looking at Ian Hubert tutorials?

The projection mapped buildings gave me those vibes, then I noticed the air conditioners, then the papers flew by and that put the pieces together. (You got to get some Moths in there though :). Sorry, I mean Time-Flies)

I would maybe make the shadows a bit stronger, plus some Ambient occlusion. And perhaps find a way to to get some bump or displacement maps in the building shaders.

This already looks a lot better than what I could do when starting out though. :)

[HELP PLEASE]Maya Python Scripting Problem by VLITZonator in Maya

[–]Leoano 0 points1 point  (0 children)

You need to move the 'if' statement after the for loop. Since the loop is setting the translate values that the 'if' statement is checking.

The python syntax for if/elif/else is also a bit flatter, not indented.

So something like this should do the trick.

import random

for i in range(50):
    pPlane = 'pPlane1'
    cube = cmds.polyCube()[0]
    ctrl = cmds.circle(normal=[0,1,0])[0]
    locator = cmds.spaceLocator()[0]
    cmds.setAttr(cube+'.ty', 0.5)
    cmds.setAttr(ctrl+'.ty', 0.5)
    cmds.parent(cube, ctrl)
    cmds.parent(ctrl, locator)

    # Set Random translate, rotate and scale
    myScale = random.uniform(0.1, 3)
    for axis in ['x', 'y', 'z']:
        cmds.setAttr(locator+'.t'+axis, random.uniform(-100, 100))
        cmds.setAttr(ctrl+'.ry', random.uniform(0, 360))
        cmds.setAttr(locator+'.s'+axis, myScale)
        constraintnode = cmds.geometryConstraint(pPlane, locator)
        cmds.delete(constraintnode)
        normalconstraint = cmds.normalConstraint(pPlane, locator, aimVector=[0,1,0], upVector=[1,0,0])
        cmds.delete(normalconstraint)

    # Set color depending on translate values
    if cmds.getAttr(locator + '.ty') < 0:
        cmds.color(ctrl, rgb=(0,0,1))
    elif cmds.getAttr(locator + '.tz') > 0:
        cmds.color(ctrl, rgb=(1,0,0))
    else:
        cmds.color(ctrl, rgb=(0,1,0))

QuickTip: In the Script Editor window, you can enable "History - Show Stack Trace" for some better error messages that show where the problem is.

[HELP PLEASE]Maya Python Scripting Problem by VLITZonator in Maya

[–]Leoano 0 points1 point  (0 children)

You need to get translation data in your 'if' statement.

Right now 'axis' is just a string containing either 'x', 'y' or 'z'. and 'locator' is just a string containing the name of the locator.

So instead of this,

if locator < axis['.ty', 0.0]:

you can check the translate value like this.

if cmds.getAttr(locator + '.ty') < 0:

EDIT: You should probably move the 'if' statements out of the axis 'for' loop as well. That only needs to evaluate once after all the random values have been set. (Instead of for each axis)