Gaitkit Sign in Open the lab
Assault Rifle, A generic game assault rifle about 90 cm long, standing on its magazine and grip with the muzzle toward +Z (or lying on its side as a pickup): a chamfered upper receiver with a top rail, a lower with a magazine well, a vented octagonal handguard, a gas block, a ported muzzle brake, a raked pistol grip, a curved magazine and an adjustable stock with a butt pad. Iron sights, a holo red-dot or a scope, a suppressor, a vertical foregrip, an extended or drum magazine and the stock are knobs, in modern or sci-fi style. The bolt and side charging handle are a part named bolt that racks back along z; an empty node named muzzle marks the barrel tip (the bullet spawn point) and one named grip the pistol grip. Sights and sci-fi glow strips light up at night.
Prop · 1 moving part

Assault Rifle

A generic game assault rifle about 90 cm long, standing on its magazine and grip with the muzzle toward +Z (or lying on its side as a pickup): a chamfered upper receiver with a top rail, a lower with a magazine well, a vented octagonal handguard, a gas block, a ported muzzle brake, a raked pistol grip, a curved magazine and an adjustable stock with a butt pad. Iron sights, a holo red-dot or a scope, a suppressor, a vertical foregrip, an extended or drum magazine and the stock are knobs, in modern or sci-fi style. The bolt and side charging handle are a part named bolt that racks back along z; an empty node named muzzle marks the barrel tip (the bullet spawn point) and one named grip the pistol grip. Sights and sci-fi glow strips light up at night.

Size
0.07 × 0.33 × 0.92 m
Triangles
1,814
Open in the lab

ProPro download.

Also as , a .zip with the .obj and its .mtl.

Ready for any engine. The download carries the knobs you set here.

Tune it

8 knobs: Finish, Style, Optic, Suppressor, Foregrip, Magazine, Stock, Pose.

Specs

Size
0.07 × 0.33 × 0.92 m
width × height × depth
Triangles
1,814
of 6,000
Draw calls
1
one vertex-colour material
Moving parts
1
bolt · slide
Knobs
8
3 presets
Night lights
1
glow

Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.

Use it

Code for the specimen as it is set up above; it follows your knobs.

JavaScript
import { createAsset } from 'https://gaitkit.com/cdn/assault-rifle.mjs';

const assaultRifle = createAsset();
scene.add(assaultRifle);                      // rests on y = 0, front faces +Z

More in the docs; agents can fetch all of this through MCP.

Knobs

KnobTypeValuesDefaultWhat it does
finishchoiceblack tan olive gunmetal arcticblackColourway: black, tan (desert tan furniture on a dark receiver), olive (olive drab furniture), gunmetal (grey steel receiver with black furniture) or arctic (white furniture on grey, clean sci-fi look). In sci-fi style it also picks the glow colour (cyan, amber, green, cyan, red).
stylechoicemodern scifimodernmodern (a contemporary rail-system rifle) or scifi (angular armoured shells over the handguard and receiver, glowing strips, a glowing magazine window and an emitter ring at the muzzle: a pulse rifle).
opticchoiceiron reddot scopereddotSight on the top rail: iron (folding front and rear iron sights), reddot (a boxy holographic sight with a glowing reticle) or scope (a 30 cm magnified scope on two rings with turrets).
suppressortoggleon / offfalseReplaces the muzzle brake with a 17 cm suppressor; the muzzle node moves to its tip.
foregriptoggleon / offtrueA vertical foregrip under the handguard.
magazinechoicestandard extended drumstandardstandard (a curved 30-round box magazine), extended (a longer curved magazine) or drum (a round drum magazine for sustained fire).
stocktoggleon / offtrueAn adjustable shoulder stock on a buffer tube. Off gives a compact rifle with only an end cap.
posechoiceupright grounduprightupright (standing on its magazine and grip as if held, muzzle +Z) or ground (lying on its left side, as a pickup dropped on the floor).

Presets: standard issue {"finish":"black","optic":"iron","foregrip":false} · desert marksman {"finish":"tan","optic":"scope","suppressor":true,"magazine":"extended"} · pulse rifle {"finish":"arctic","style":"scifi","optic":"reddot","magazine":"drum"}

Files

FileWhat
assault-rifle.glb ProGLB, default look · 218 KB
assault-rifle.mjs ProES module, every knob live
assault-rifle.obj ProOBJ, static; colours in the .mtl
assault-rifle.mtlOBJ colours; keep it next to the .obj
assault-rifle-params.jsonknob schema, presets, night zones

Licence

Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.