Krea 2 Anygles: Camera Viewpoint Control LoRA for ComfyUI

ComfyUI Wikinews

Krea 2 Anygles turns one photo of a person into a new camera view with a 3D human normal LoRA, plus ComfyUI nodes and a workflow for orbit, elevation and distance.

krea2-anygles is a spatial control LoRA for Krea 2 Turbo that changes the camera viewpoint of a single human subject while keeping the person, pose, clothing, style and scene. It ships with native ComfyUI nodes and a ready-made workflow.

Point a camera at a person, then move it: horizontal orbit, elevation and distance control all come from one adapter. Anygles recovers a 3D human mesh and an aligned normal map from the source image, rotates that mesh to the requested pose, and feeds the rendered normal into Krea 2 as spatial control. The original image stays the identity and style reference, so the model generates a new view instead of editing the old one.

Source imageGenerated camera view
Source image, single human subjectThe same subject from a rotated camera position

A horizontal orbit. Every frame is generated independently from the original source, so views do not chain into each other.

What it controls

  • Full horizontal orbit: continuous yaw across a complete 360 degree turn.
  • Elevation: move the viewpoint above or below the subject while keeping body proportions natural.
  • Distance: pull from closer framing to wider views.
  • Combined motion: vary yaw, elevation and distance together along one smooth path.
  • Independent generation: each view starts from the original source image, which avoids the drift that builds up when generated frames are fed back into the model.
  • Source-aware framing: the output keeps the source aspect ratio with 16 pixel aligned dimensions.

The exposed control ranges are elevation from -60 to +60 degrees and distance from 0.6x to 1.8x, described by the author as interface guardrails rather than hard limits. The release sweeps cover elevation -45 to +45 degrees and distance 1.35x to 0.78x.

Azimuth, elevation and distance changing together along a single closed camera path.

The current release targets one clear human subject. It is not built for animals, general objects, crowds, or exact reconstruction of a full 3D scene.

Compared with a multiple-angles Qwen baseline

The source repository includes a practical head-to-head against a Qwen-Image-Edit 2511 multiple-angles LoRA running with a 4 step Lightning schedule. Both sides receive the original source image independently for every generated frame, and all outputs are the first result from a frozen prompt and seed.

A 360 degree horizontal orbit comparison between the Qwen multiple-angles baseline and Anygles.

The author notes this is a feature comparison rather than an identical-conditioning ablation, since the Qwen baseline does not receive the target normal used by Anygles.

How it works

  1. A human mesh is recovered once from the source image with SAM 3D Body.
  2. The mesh is rotated around the pelvis and rendered as an aligned target normal inside a canvas that matches the source aspect ratio.
  3. The original image remains the semantic and identity reference for Krea 2.
  4. The target normal is VAE encoded and injected through the spatial Control-LoRA projection at the noisy image input.
  5. A short relative camera sentence carries the intended view semantics. Internal angles are normalized to the training convention, for example a request 50 degrees to the right is sent as 310 degrees to the left, while the UI keeps signed controls.

Run it in ComfyUI

Install the nodes:

cd ComfyUI/custom_nodes
git clone https://github.com/alexw5702-afk/krea2-anygles
cd krea2-anygles
pip install -r requirements.txt

Accept the SAM 3D Body license and download the human mesh checkpoint, then place the LoRA in the usual folder:

hf download facebook/sam-3d-body-dinov3 --local-dir ComfyUI/models/sam3d_body
FileDestination
krea2_anygles_rank32.safetensorsComfyUI/models/loras
krea2_turbo_int8_convrot.safetensorsComfyUI/models/diffusion_models
qwen3vl_4b_fp8_scaled.safetensorsComfyUI/models/text_encoders
qwen_image_vae.safetensorsComfyUI/models/vae
sam-3d-body-dinov3ComfyUI/models/sam3d_body

The node pack adds four nodes:

  1. Krea2 Anygles Camera resizes the source to an aligned canvas, recovers the human mesh, rotates it with yaw, elevation and distance, renders the target normal, and assembles the camera prompt.
  2. Krea2 Anygles Encode sends the source to Qwen3-VL and the Krea 2 clean reference path, and encodes the full canvas target normal.
  3. Krea2 Anygles Load LoRA applies the adapter and keeps its spatial projection instead of dropping that non standard tensor.
  4. Krea2 Anygles Model Patch injects the aligned normal tokens at the noisy image input and caches the clean visual reference K/V.

Recommended settings from the model card: 8 steps, Euler, simple scheduler, CFG 1.0, adapter strength 1.0, VLM reference and reference K/V cache enabled. SAM 3D Body and Krea 2 run sequentially, so both full models never need to sit on the GPU at the same time.

Availability

This is an unofficial community release. Hidden sides and background content are generated rather than recovered from measured geometry, so accessories, text, fingers and occluded details can change, and large camera moves can alter lighting or body proportions. Poor body recovery, severe occlusion, tiny subjects or multiple people can produce incorrect normal control.

Comments

Sign in with GitHub to join the discussion.

Loading comments…
Krea 2 Anygles: Camera Viewpoint Control LoRA for ComfyUI | ComfyUI Wiki