[ Home ] [ wiz / dep / hob / lounge / jp / meta / games / music ] [ all ] [  Rules ] [  FAQ ] [  Search /  History ] [  Textboard ] [  Wiki ]

/hob/ - Hobbies

Video game related hobbies go on /games/
Password (For file deletion.)

  [Go to bottom]   [Catalog]   [Return]   [Archive]

File: 1439863614630.gif (9.1 MB, 667x851, 29:37, Test.gif) ImgOps iqdb

 No.11978[View All]

Is anyone here in to 3D modelling? Planning to start?

What programs do you use? Are you working on animation, models to publish, or building environments to render pleasantly? If you plan to export to a game engine, check out ( >>>/games/8456 )
193 posts and 122 image replies omitted. Click reply to view.


I know exactly how you feel. I perserveered, overcame, then excelled in time, but neverthelesd I understand your frustration.


File: 1668148203100.png (125.59 KB, 1565x659, 1565:659, ClipboardImage.png) ImgOps iqdb

i just don't know how to work with precise measurements in blender. it doesnt seem possible, the most basic shit that are universal among older programs are just missing. it's really frustrating

i only really only use blender for cleaning the geometry and adding bevels and making edges nice and exporting. i have been using blender 6 years for this purpose and it aint any easier. i have zero desire to actually model within blender. i really wonder if there's a better cleanup tool besides blender. every time i open blender it feels renting out a whole construction company to repair a dent in my drywall, so much shit is on screen that i will never interact with, so many features and bullshit are just in the way


File: 1668171295313-0.png (76.06 KB, 800x400, 2:1, fix.png) ImgOps iqdb

File: 1668171295313-1.png (8.15 MB, 400x400, 1:1, torus7.png) ImgOps iqdb

The specular highlight >>63108 exposed the discontinuity in normals along the seam where the torus joins, in the red section. Added normal smoothing to fix it.
  smoothnormalgroup: (normalize, normals, start, ...indices) => {
    const scan = indices.length == 1 ? indices [0] : indices
    let   nx = 0, ny = 0, nz = 0

    for (const k of scan) {
      const pos = 3 * (start + k)
      nx += normals [pos    ]
      ny += normals [pos + 1]
      nz += normals [pos + 2]

    const n = normalize (nx, ny, nz)

    for (const k of scan) {
      const pos = 3 * (start + k)
      normals [pos    ] = n [0]
      normals [pos + 1] = n [1]
      normals [pos + 2] = n [2]


    smoothnormals: (normals, nstart, outdivs, indivs) => {
      const G      = Geometry
      const norm   = G.normalize
      const smooth = G.smoothnormalgroup
      const stride = indivs + 1
      const tolast = outdivs * stride

      for (let k = 1; k < indivs; ++k) {
        smooth (norm, normals, nstart, k, k + tolast)

      for (let k = 1; k < outdivs; ++k) {
        const idx = k * stride
        smooth (norm, normals, nstart, idx, idx + indivs)

      smooth (norm, normals, nstart, 0, indivs, tolast, tolast + indivs)


to connect to vertices in blender you click one, shift click or ctrl click i cant remember the next one, then press m for merge

i never really got good at blender, but i will tell you, you should try to notice search/confusion feelings and as soon as you feel them, just google the exact thing you want. dont try and look through the UI just duckduckgo blender what i want


File: 1668684699713-0.png (1.64 MB, 400x400, 1:1, sphere1.png) ImgOps iqdb

File: 1668684699713-1.png (4.45 MB, 400x400, 1:1, sphere2.png) ImgOps iqdb

File: 1668684699713-2.png (3.22 MB, 400x400, 1:1, sphere3.png) ImgOps iqdb

A customizable sphere generator in the style of the torus one >>63039. The three demos are spheres modified by longitudinal waves, by latitudinal waves and by polar dips through height control.
    addfuns_x: (vertices, ox, oy, oz, rxfun, ryfun, rzfun, londivs, latdivs) => {
      const M   = Math
      const PI  = M.PI
      const sin = M.sin
      const cos = M.cos

      for (let a = 0; a <= londivs; ++a) {
        const lonang = 2 * a * PI / londivs
        const loncos = cos (lonang)
        const lonsin = sin (lonang)

        for (let b = 0; b <= latdivs; ++b) {
          const latang = (b / latdivs - 0.5) * PI
          const latcos = cos (latang)
          const latsin = sin (latang)

          const nx = loncos * latcos
          const ny = latsin
          const nz = lonsin * latcos

          vertices.push (
            ox + rxfun (a, b) * nx,
            oy + ryfun (a, b) * ny,
            oz + rzfun (a, b) * nz


File: 1668694158558.jpg (183.95 KB, 900x720, 5:4, cat.jpg) ImgOps iqdb

Nice work wizzy


File: 1668719371545.png (9.07 MB, 400x400, 1:1, cat.png) ImgOps iqdb

Many thanks. C64/amiga is a ship I can get behind.


Nice one. I don't understand the last one with the polar dips. I get the polar dips, but how does it get that pseudo-cyllindrical shape?


gotta remember to look up 3d modeling via code i remember some tool ir library….


File: 1668783748076.png (1.71 MB, 400x400, 1:1, sphere4.png) ImgOps iqdb

>Nice one.

>but how does it get that pseudo-cyllindrical shape?

It comes from the particular ryfun passed to addfuns_x >>63235
    spherepoledip: () => Geometry.Sphere.addfuns_xnti (
      vertices, normals, texcoords, indices,
      0, 0, 0,
      (a, b) => 0.7,
      (a, b) => 0.2 + 1.0 * Math.sin (b * Math.PI / 64),
      (a, b) => 0.7,
      64, 0, 1, 64, 0, 1,
      false, false

Sine, and therefore cosine as well, has the behavior that it changes the slowest at its minima and maxima of -/+1 and changes the fastest at its midpoints of 0. The sphere's parallels, the latitude circles, want to have slow change near the equator, where the latcos term that goes into nx and nz >>63235 has its maximum of 1. But while normally the height would go monotonically from -radius at the south pole to +radius at the north pole, for the poledip demo the ryfun causes the same amount of parallels to be spent on the height starting above the minimum, going down to the minimum, then going all the way up to the maximum, then dipping below the maximum. So some of the parallels are spent on the polar dips, to go down to the minimum height and to come down from the maximum height. Therefore fewer parallels are available for the minimum to maximum middle phase. The result is that the middle phase is stretched out along the height. But this is precisely the zone where the radius of a parallel changes the slowest, at the vicinity of the equator. Taking the zone where the radius of a parallel changes the slowest and stretching that zone out vertically results in that pseudo-cylinder look.

Here is an alternative method of getting a cylinder-like sphere:
    spherelatwaves: () => Geometry.Sphere.addfuns_xnti (
      vertices, normals, texcoords, indices,
      0, 0, 0,
      (a, b) => 0.7 + 0.2 * Math.cos (2 * b * Math.PI / 64),
      (a, b) => 0.9,
      (a, b) => 0.7 + 0.2 * Math.cos (2 * b * Math.PI / 64),
      64, 0, 1, 64, 0, 1,
      false, false

Instead of taking the zone where the radius of a parallel changes the slowest and stretching that zone out vertically, you can leave the height (ryfun) alone and directly modify the radius of a parallel with a counterwave. Where the radius of a parallel has its maximum, at the equator, you put the minimum of your modifying wave, and where the radius of a parallel has its minima, at the poles, you put the maxima of your modifying wave. This results in a pseudo-cylinder without polar dips. With a real cylinder you would have to add separate end caps, but here the sphere provides the end caps for free.


File: 1670188304033.png (1.73 MB, 400x400, 1:1, points4.png) ImgOps iqdb

Linear morph between point sets in the vertex shader.
  const vertCode = `
    uniform mat4 Pmatrix;
    uniform mat4 Vmatrix;
    uniform mat4 Mmatrix;
    uniform mat4 animParams;

    attribute vec3 a_vertex;
    attribute vec3 a_endpoint;

    varying vec2 v_animz;

    void main(void) {
      float a   = animParams [0][0];
      float pi  = animParams [0][1];
      float all = animParams [0][2];
      float z   = animParams [0][3];
      float u   = 1.0 - (clamp(2.0 * cos((2.0 * a / all - 0.4 * (a_vertex.x + a_vertex.y)) * pi), -1.0, 1.0) + 1.0) / 2.0;

      vec4 c = vec4(vec3(a_vertex.xy, -z) * (1.0 - u) + vec3(a_endpoint.xy, z) * u, 1.0);

      gl_Position = Pmatrix * Vmatrix * Mmatrix * c;
      gl_PointSize = 3.0;
      v_animz = vec2(u, gl_Position.z);


Room temperature IQ


Rude and dismissive attitude


>just make the program do it for you!
whats the fucking point then you retard what a waste of time if you don't even want to learn how to do it yourself then just give up


no, blender is just a weird modeling tool for autists and artists, not technical modeling with exact dimensions, unfortunately


>not technical modeling with exact dimensions
Yes, because Blender never sold itself as a CAD.


for now. give it time, it will eventually add those features in and become even more confusing


File: 1672780795011.png (138.14 KB, 336x326, 168:163, .png) ImgOps iqdb

>Adding new useful features


i did not say it would be useful. blender accumulates features however


File: 1672782882742.jpg (3.29 MB, 1920x1080, 16:9, Hammer_screen.jpg) ImgOps iqdb

But adding a mode to enforce mathematical precision, or even just a simple global 3D grid snapping system would put Blender in the realm of useful software. As it stands I'd rather use Hammer World Editor to design things.


>But adding a mode to enforce mathematical precision
Which is not the point of Blender. Do you also use Maya and complain it's not Autocad?


Blender is "creative tool" yes, but in being such it should at least offer a small set of options to allow those who want symmetry, size consistency, and even spacing in their works to have it.

Say I'm creating a replica model of a real house to use in a VFX shot. I want it to look just like the real thing, so I take some measurements from the real house and try to apply them to blender.

I measure the 2" x 4" beams in the walls. They're 1.5" x 3.5" just as we could have guessed. In any normal program, we'd have a simple grid. Let's assume the default grid size represents inches. We create a block. By default, it's 1x1 grid units, 1x1". Now we enable grid snapping, drag one face of the cube out 2 units, and now we have a 1"x3" slug. Then we tap a button to subdivide the grid once, and that gives us snap points for half an inch, so we drag one face and then another out to give us our 1.5"x.3.5" 2"x4" slug, which we then stretch vertically to whatever length a 2x4 is used in the house. In standard construction, we're looking at a 24" gap from end to end of a beam. So we set our grid back to where it was to get 1" blocks and then drag a duplicate of our beam out and count 24 units apart, then repeat that in to an array to get an accurate wall frame. We can take a beam, rotate it 90 degrees, and using the grid, drag it down to be 24" long for our studs. Quarter inch drywall is just two clicks of subdividing the grid, then a cube, then an extrusion along this grid to cover the side of the wall. Would take less time to do than it was to read.

Now what happens if we try to do that in Blender? Well there is a grid in 3D view, but it's just a reference point for where the model is in the scene. It can't be snapped to. Now there is a grid snapping option, but the grid resizes based on zoom level, and each object has its own grid center origin so there's no consistency between anything. You can move and extrude sides in increments but those also scale with things like viewport size and proximity of the camera to the center of the object. Every time something is moved, it has a location with like 8 decimal points and if you zoom in too close on a side view, more decimal points get added; there's never a way to align it with the default grid because even Blender doesn't know where its own grid is. Then Blender crashes after trying to show a popup for Big Bunny Buck: Broken Edition DVD Boxset.


So, Blender is trying to be a free version of Maya and 3DS Max. It has some problem, but those two are its goals.
Blender is not and should not try to replace any other CAD software. If you want a CAD software, you look for a CAD software.


Max and Maya have global grids; snapping to a global grid isn't something exclusive to CAD packages. It's a common-sense feature. Blender just got functional pixel snapping for UV editing, so why not add that in 3D? Besides, blender also touts itself as a game development toolkit. Any game level designer is going to need a global grid to author precise square nodes, especially for portalflow through doors and such.

You could tell an AutoCAD user who wants to model by 3D sculpting to go use Blender, but don't tell a Blender user who simply wants to quantize measurements to whole numbers to go use AutoCAD.


No. Blender is trying to be everything except proper CAD.


File: 1675033743219.webm (Spoiler Image, 615.44 KB, 1920x1080, 16:9, dildont.webm) ImgOps iqdb

Megaman inspired adult toy

Made in Blender 3.2 (cycles)


this is what blender is made for


File: 1675908440702.png (124.29 KB, 1332x873, 148:97, ClipboardImage.png) ImgOps iqdb

stairs for backyard porch. just an idea


very uplifting 3d wiz


originally made this one night so i could build a part list and figure out the lengths of wood and hardware etc, so i could tell my sister what to buy. she ended up using it when instead just hiring someone to build it instead. they were going to charge way more and she showed them it and as a result called them out on like $500 of material

it took like 2 hours so in a way that was worth $250/hr of my time lol


File: 1677049654682.png (16.5 MB, 640x360, 16:9, output.png) ImgOps iqdb

Has someone tried VFX and simulations. These are the most interesting to create


god i wish that would happen to me the next time i fired up my long-range interceptor


File: 1678845905522.png (119.55 KB, 2000x711, 2000:711, ClipboardImage.png) ImgOps iqdb

idea for a laptop holder. might make it tomorrow. not sure how to secure laptop to it yet, i expect a solution will be obvious when its physically in front of me


its unergonomic to spend hours laying down, i would recommend u print yourself a standing desk


i cant write in any other position. it isnt comfortable to stand or sit in a chair. the majority of the time involves having eyes shut and thinking, sleeping, using dreams to make decisions

i dont want to stand or sit or be in any position requiring work. lying down is awesome


It's the perfect position to read pdfs on a laptop, at least. Fuck I hate reading them siting.


I tend to read sitting, but a standing desk is on my list of wants. Reading on a phone is more common for me, though.


I like to read sitting if it's a real book, but on everything else I prefer to read it on a bed.


File: 1678941600494.png (766.69 KB, 600x726, 100:121, ClipboardImage.png) ImgOps iqdb

i did start on it, but i quickly found the solution for securing the laptop using 4 corner braces. you can see they basically let the laptop slide in. but i had to glue them in place with spacers for now, so they dont move while i actually screw them in later. should finish tomorrow and then i can test it out. if it doesnt need adjustments i will sand and paint it black


File: 1679005423278.png (1.02 MB, 700x820, 35:41, ClipboardImage.png) ImgOps iqdb

forgot to make the notch for power cord before painting, but aside from that it is done, with only slight deviations from the initial idea, mainly the angle, height of legs, and shorter leg braces to give more room for my real legs


I want to start 3D modeling on a tablet. I'm looking at the samsung tab s8 to replace my aging one.

Is Nomad sculpt viable to make 3D printable models? I really like it's interface so far.


i don't see why not, looks like every other organic flesh/character sculpter. you might need to learn additionally how to export and prepare the file for 3d printing


I'm also interested in doing more mechanic objects like armour plates but I fucking hate stuff like blender and it's unneeded complexity.


Hey that looks great so far! Nice job


it works great too. in hindsight i would have made some parts thinner because with the old laptop in it, it weighs a lot and is uncomfortable to move from a lying position, like every time i have to piss i get annoyed. i also had to chisel out little slots for the power cord and headphone jack. very sturdy and comfortable once its in place though. have been watching tons of anime and writing in comfort.


You could make much of it from aluminium beams, the kind that accepts T-nuts. The plank on which the lappytop rests can just be a metal mesh, allowing for better thermals and cable management.


You could make much of it from aluminium beams, the kind that accepts T-nuts. The plank on which the lappytop rests can just be a metal mesh, allowing for better thermals and cable management.


File: 1681416425739.png (622.07 KB, 800x377, 800:377, ClipboardImage.png) ImgOps iqdb

to make it lighter i will probably just drill holes along the middle of all the studs to reduce the weight. this laptop conveniently has everything for cooling on the back/top, nothing on the sides or below even has vents, so it's not affected at all. also have cablestraps which work pretty good for holding the power cord. the power cord coming from the brick is barely long enough but it works


You still using it?


will destroy your bed though

[View All]
[Go to top] [Catalog] [Return][Post a Reply]
Delete Post [ ]
[ Home ] [ wiz / dep / hob / lounge / jp / meta / games / music ] [ all ] [  Rules ] [  FAQ ] [  Search /  History ] [  Textboard ] [  Wiki ]