Beni Bahadur Singh — VFX Compositor & Prep/Paint Supervisor

:root{–bg:#04040a;–bg2:#070710;–surface:rgba(255,255,255,0.035);–border:rgba(255,255,255,0.07);–accent:#ff6b2b;–accent2:#ffb347;–accent3:#ff3d6e;–text:#f4f2ee;–muted:rgba(244,242,238,0.42)} *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} html{scroll-behavior:smooth} body{background:var(–bg);color:var(–text);font-family:’Outfit’,sans-serif;font-weight:300;overflow-x:hidden;cursor:none} #cur{position:fixed;width:10px;height:10px;background:var(–accent);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);mix-blend-mode:difference} #cur2{position:fixed;width:36px;height:36px;border:1.5px solid rgba(255,107,43,.5);border-radius:50%;pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:all .15s ease} .orb{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none;animation:flt 14s ease-in-out infinite alternate} .o1{width:700px;height:700px;background:radial-gradient(circle,#c43500 0%,transparent 70%);top:-200px;left:-100px;opacity:.28} .o2{width:500px;height:500px;background:radial-gradient(circle,#1a4aff 0%,transparent 70%);bottom:-100px;right:0;opacity:.18;animation-delay:-7s} .o3{width:400px;height:400px;background:radial-gradient(circle,#ff3d6e 0%,transparent 70%);top:40%;right:30%;opacity:.12;animation-delay:-4s} @keyframes flt{0%{transform:translate(0,0) scale(1)}100%{transform:translate(50px,30px) scale(1.15)}} .grid-lines{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);background-size:80px 80px} .hero-bg-text{position:absolute;font-family:’Bebas Neue’,sans-serif;font-size:clamp(200px,22vw,340px);letter-spacing:-10px;color:rgba(255,255,255,.025);top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;user-select:none;z-index:0} .hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:140px 60px 100px} .hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden} .hero-content{position:relative;z-index:2;max-width:900px} .hero-eyebrow{display:inline-flex;align-items:center;gap:10px;padding:6px 16px;border-radius:100px;border:1px solid rgba(255,107,43,.35);background:rgba(255,107,43,.08);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(–accent);margin-bottom:36px} .blink{width:7px;height:7px;background:var(–accent);border-radius:50%;animation:blink 1.6s ease infinite} @keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}} .hero-name{font-family:’Bebas Neue’,sans-serif;font-size:clamp(72px,10vw,140px);line-height:.92;letter-spacing:2px;color:var(–text)} .fire{background:linear-gradient(90deg,#ff6b2b,#ffb347,#ff3d6e);background-size:200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradmove 3s ease infinite alternate} @keyframes gradmove{0%{background-position:0%}100%{background-position:100%}} @keyframes fadeup{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}} .hero-role{font-size:clamp(16px,2vw,22px);font-weight:300;color:var(–muted);margin-top:20px} .hero-role strong{color:var(–text);font-weight:500} .hero-desc{max-width:580px;font-size:15px;line-height:1.9;color:var(–muted);margin-top:28px} .hero-contact{display:flex;align-items:center;gap:24px;margin-top:40px;flex-wrap:wrap} .contact-pill{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:100px;border:1px solid var(–border);background:var(–surface);color:var(–text);text-decoration:none;font-size:14px;transition:all .3s} .cta-main{display:inline-flex;align-items:center;gap:10px;padding:14px 36px;border-radius:100px;background:linear-gradient(135deg,var(–accent),var(–accent3));color:#fff;text-decoration:none;font-size:14px;font-weight:600} .ticker-wrap{overflow:hidden;background:var(–accent);padding:14px 0} .ticker-inner{display:flex;gap:60px;width:max-content;animation:ticker 30s linear infinite} @keyframes ticker{0%{transform:translateX(0)}100%{transform:translateX(-50%)}} .ticker-item{font-family:’Bebas Neue’,sans-serif;font-size:14px;letter-spacing:3px;color:#fff;white-space:nowrap;display:flex;align-items:center;gap:20px} .ticker-dot{width:6px;height:6px;background:rgba(255,255,255,.5);border-radius:50%;flex-shrink:0} .stats-row{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(–border);border-bottom:1px solid var(–border);background:var(–bg2)} .stat-box{padding:52px 40px;border-right:1px solid var(–border);text-align:center} .stat-box:last-child{border-right:none} .stat-num{font-family:’Bebas Neue’,sans-serif;font-size:64px;letter-spacing:2px;background:linear-gradient(135deg,#fff 30%,var(–accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1} .stat-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(–muted);margin-top:10px} .bvfx-section{padding:120px 60px;max-width:1500px;margin:0 auto} .bvfx-section-full{padding:120px 0} .bvfx-section-full .si{max-width:1500px;margin:0 auto;padding:0 60px} .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(–accent);margin-bottom:18px} .eyebrow::before{content:”;display:block;width:28px;height:1px;background:var(–accent)} .sec-title{font-family:’Bebas Neue’,sans-serif;font-size:clamp(48px,5vw,80px);letter-spacing:2px;line-height:.95} .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-top:60px} .about-photo-frame{position:relative;border-radius:24px;overflow:hidden;border:1px solid var(–border)} .about-photo-frame img{width:100%;height:auto;display:block} .photo-badge{position:absolute;bottom:24px;left:24px;right:24px;background:rgba(4,4,10,.85);backdrop-filter:blur(20px);border:1px solid var(–border);border-radius:16px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between} .pb-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(–muted)} .pb-val{font-family:’Bebas Neue’,sans-serif;font-size:22px;letter-spacing:1px;color:var(–accent)} .about-text{color:var(–muted);font-size:15px;line-height:1.9;margin-bottom:20px} .about-text strong{color:var(–text);font-weight:500} .studios-grid{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px} .studio-tag{padding:8px 20px;border-radius:100px;border:1px solid var(–border);background:var(–surface);font-size:12px;color:var(–muted)} .exp-bg{background:var(–bg2);border-top:1px solid var(–border);border-bottom:1px solid var(–border)} .exp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px} .exp-card{padding:40px;border-radius:24px;border:1px solid var(–border);background:rgba(255,255,255,.018);position:relative;overflow:hidden;transition:all .35s} .exp-card:hover{border-color:rgba(255,107,43,.3);transform:translateY(-5px)} .exp-icon{font-size:36px;margin-bottom:24px;display:block} .exp-num{position:absolute;top:20px;right:24px;font-family:’Bebas Neue’,sans-serif;font-size:72px;color:rgba(255,255,255,.025);line-height:1} .exp-title{font-family:’Bebas Neue’,sans-serif;font-size:26px;letter-spacing:1px;margin-bottom:14px} .exp-desc{font-size:13px;color:var(–muted);line-height:1.8} .gallery-masonry{columns:4;column-gap:14px} .gallery-item{break-inside:avoid;margin-bottom:14px;border-radius:14px;overflow:hidden;border:1px solid var(–border);position:relative;cursor:pointer;display:block} .gallery-item img{width:100%;height:auto;display:block;transition:transform .6s ease;filter:brightness(.85) saturate(1.1)} .gallery-item:hover img{transform:scale(1.05);filter:brightness(1) saturate(1.3)} .gi-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(4,4,10,.85) 0%,transparent 55%);opacity:0;transition:opacity .35s;display:flex;align-items:flex-end;padding:16px} .gallery-item:hover .gi-overlay{opacity:1} .gi-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.7)} .lb{position:fixed;inset:0;z-index:9000;background:rgba(4,4,10,.97);backdrop-filter:blur(24px);display:none;align-items:center;justify-content:center;padding:40px} .lb.open{display:flex} .lb-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:12px;border:1px solid var(–border)} .lb-close{position:absolute;top:24px;right:32px;font-size:32px;color:var(–muted);cursor:pointer;background:none;border:none} .lb-arrows{position:absolute;bottom:32px;display:flex;gap:12px} .lb-arrow{width:48px;height:48px;border-radius:50%;border:1px solid var(–border);color:var(–text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;background:none} .lb-arrow:hover{border-color:var(–accent);color:var(–accent)} .showreel{position:relative;overflow:hidden;background:var(–bg2);border-top:1px solid var(–border);border-bottom:1px solid var(–border);display:flex;align-items:center;justify-content:center;padding:100px 60px;text-align:center} .sr-glow{position:absolute;width:600px;height:300px;background:radial-gradient(ellipse,rgba(255,107,43,.15) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%)} .sr-inner{position:relative;z-index:1} .sr-title{font-family:’Bebas Neue’,sans-serif;font-size:clamp(60px,8vw,110px);letter-spacing:4px;line-height:.95;margin-bottom:24px} .sr-title span{color:var(–accent)} .sr-sub{color:var(–muted);font-size:16px;margin-bottom:40px} .play-big{display:inline-flex;align-items:center;gap:16px;padding:18px 48px;border-radius:100px;background:linear-gradient(135deg,var(–accent),var(–accent3));color:#fff;text-decoration:none;font-size:16px;font-weight:700} .play-icon{width:48px;height:48px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center} .credits-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px} .credit-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:12px;border:1px solid var(–border);background:var(–surface);font-size:13px;color:var(–muted);transition:all .3s} .dot{width:6px;height:6px;border-radius:50%;background:var(–accent);flex-shrink:0} .cta-s{padding:160px 60px;text-align:center;position:relative;overflow:hidden;background:var(–bg2);border-top:1px solid var(–border)} .cta-bg{position:absolute;font-family:’Bebas Neue’,sans-serif;font-size:260px;letter-spacing:-10px;color:rgba(255,255,255,.018);top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;z-index:0} .cta-glow{position:absolute;width:700px;height:350px;background:radial-gradient(ellipse,rgba(255,107,43,.12) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);z-index:0} .cta-inner{position:relative;z-index:1} .cta-avail{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(–muted);margin-bottom:24px} .avail-dot{width:8px;height:8px;background:#00e676;border-radius:50%;animation:blink 2s ease infinite} .cta-title{font-family:’Bebas Neue’,sans-serif;font-size:clamp(56px,8vw,120px);letter-spacing:4px;line-height:.92;margin-bottom:24px;background:linear-gradient(135deg,#fff 30%,var(–accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent} .cta-sub{color:var(–muted);font-size:17px;margin-bottom:48px} .cta-contacts{display:flex;gap:24px;justify-content:center;flex-wrap:wrap} .cta-link{display:inline-flex;align-items:center;gap:12px;padding:16px 36px;border-radius:100px;border:1px solid var(–border);background:var(–surface);color:var(–text);text-decoration:none;font-size:15px;font-weight:500} .bvfx-footer{padding:48px 60px;border-top:1px solid var(–border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px} .fl{font-family:’Bebas Neue’,sans-serif;font-size:20px;letter-spacing:3px} .fl span{color:var(–accent)} .fc{font-size:12px;color:var(–muted)} .flinks{display:flex;gap:24px;list-style:none} .flinks a{font-size:12px;color:var(–muted);text-decoration:none} .fsoc{display:flex;gap:12px} .soc{width:38px;height:38px;border:1px solid var(–border);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(–muted);text-decoration:none;font-size:12px;font-weight:700} .bvfx-nav{position:fixed;top:0;left:0;right:0;z-index:500;display:flex;align-items:center;justify-content:space-between;padding:22px 60px;background:linear-gradient(180deg,rgba(4,4,10,.95) 0%,transparent 100%);backdrop-filter:blur(24px)} .bnl{font-family:’Bebas Neue’,sans-serif;font-size:26px;letter-spacing:3px;color:var(–text);text-decoration:none} .bnl span{color:var(–accent)} .bnr{display:flex;align-items:center;gap:40px} .bnlinks{display:flex;gap:32px;list-style:none} .bnlinks a{color:var(–muted);text-decoration:none;font-size:12px;letter-spacing:.1em;text-transform:uppercase} .hbtn{padding:10px 28px;background:linear-gradient(135deg,var(–accent),var(–accent3));color:#fff;text-decoration:none;border-radius:100px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase} .reveal{opacity:0;transform:translateY(36px);transition:opacity .8s ease,transform .8s ease} .reveal.in{opacity:1;transform:translateY(0)} .d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s} @media(max-width:1024px){.about-grid{grid-template-columns:1fr}.exp-grid{grid-template-columns:repeat(2,1fr)}.stats-row{grid-template-columns:repeat(2,1fr)}.gallery-masonry{columns:3}} @media(max-width:768px){.bnlinks{display:none}.gallery-masonry{columns:2}.hero{padding:120px 24px 100px}.bvfx-section{padding:80px 24px}.bvfx-footer{flex-direction:column;text-align:center}}
BENIVFX
VFX
Available for Projects · 15+ Years of Mastery

BENI
BAHADUR
SINGH

VFX Compositor & Prep/Paint Supervisor

Over 62,000 hours of hands-on VFX experience since 2011. 3,000+ high-quality shots delivered for Hollywood, Bollywood & global OTT platforms.

VFX COMPOSITOR
PREP / PAINT SUPERVISOR
STEREOSCOPIC VFX
DEEP COMPOSITING
ROTO & PAINT
LOOK DEVELOPMENT
QUALITY CONTROL
HERO SHOT CREATION
VFX COMPOSITOR
PREP / PAINT SUPERVISOR
STEREOSCOPIC VFX
DEEP COMPOSITING
ROTO & PAINT
LOOK DEVELOPMENT
QUALITY CONTROL
HERO SHOT CREATION
15+
Years of Experience
62K+
Hours of VFX Work
3000+
Shots Delivered
5180+
Days & Counting
About Beni

Powerhouse of
Visual Storytelling

Beni Bahadur Singh
Since
February 2011
Industry
VFX · Media & Entertainment

With over 15 years of hands-on experience and more than 62,000 hours dedicated to visual effects, Beni Singh is synonymous with precision, creativity, and cinematic excellence.

Starting in February 2011, Beni delivered 3,000+ high-quality shots for Hollywood, Bollywood, and international OTT platforms including Gemini Man, We Can Be Heroes, Yellowstone, and Bigil.

Worked with world-class studios: DNEG, Technicolor MPC, Red Chillies VFX, Deluxe, Prime Focus, and Legend VFX.

Top Studios
DNEGTechnicolor MPCRed Chillies VFXDeluxePrime FocusLegend VFX
Specializations

Core
Expertise

01🎬
Deep Compositing
Advanced multi-layer compositing integrating CGI, live-action plates, matte paintings and practical effects into photo-real cinematic shots.
02👁️
Stereoscopic VFX
Expert 2D-to-3D stereoscopic conversion and native stereo compositing for immersive cinema and OTT delivery.
03✏️
Prep / Paint
Wire removal, rig removal, digital makeup, beauty work, set extension cleanup – frame-perfect, invisible results at scale.
04🎭
Roto & Rotopaint
Precision rotoscoping for complex character isolations, hair, motion blur and transparency mattes.
05🌟
Look Dev & Hero Shots
Crafting signature hero shots with look development and colour science that define a film’s visual identity.
06
QC & Tech Check
Rigorous quality control, technical specification checking and client delivery oversight across broadcast and theatrical formats.
Portfolio

Selected
Work

3,000+ shots across major productions

WATCH THE
SHOWREEL

15 years of cinematic VFX mastery – distilled into one reel

Request Showreel
Filmography

Major Film &
OTT Credits

Gemini Man
We Can Be Heroes
Yellowstone
Bigil
Hollywood Productions
Bollywood Blockbusters
International OTT Platforms
DNEG Projects
Technicolor MPC
Red Chillies VFX
Deluxe Productions
Prime Focus
Legend VFX
Feature Films
Web Series
Stereoscopic 3D
HIRE
Available for New Projects

BOOK MY
TIME &
EXPERTISE

15 years · 62,000+ hours · 3,000+ shots.
Let’s craft your next cinematic masterpiece.

const cur=document.getElementById(‘cur’),cur2=document.getElementById(‘cur2’);let mx=0,my=0,rx=0,ry=0;document.addEventListener(‘mousemove’,e=>{mx=e.clientX;my=e.clientY;cur.style.left=mx+’px’;cur.style.top=my+’px’});(function loop(){rx+=(mx-rx)*.12;ry+=(my-ry)*.12;cur2.style.left=rx+’px’;cur2.style.top=ry+’px’;requestAnimationFrame(loop)})();const revEls=document.querySelectorAll(‘.reveal’);const obs=new IntersectionObserver(es=>{es.forEach(e=>{if(e.isIntersecting)e.target.classList.add(‘in’)})},{threshold:.08,rootMargin:’0px 0px -40px 0px’});revEls.forEach(el=>obs.observe(el));const images=Array.from(document.querySelectorAll(‘.gallery-item img’)).map(i=>i.src);let curIdx=0;const lb=document.getElementById(‘lb’),lbImg=document.getElementById(‘lbImg’);document.querySelectorAll(‘.gallery-item’).forEach((item,i)=>{item.addEventListener(‘click’,()=>{curIdx=i;lbImg.src=images[curIdx];lb.classList.add(‘open’);document.body.style.overflow=’hidden’})});document.getElementById(‘lbClose’).addEventListener(‘click’,()=>{lb.classList.remove(‘open’);document.body.style.overflow=”});document.getElementById(‘lbPrev’).addEventListener(‘click’,()=>{curIdx=(curIdx-1+images.length)%images.length;lbImg.src=images[curIdx]});document.getElementById(‘lbNext’).addEventListener(‘click’,()=>{curIdx=(curIdx+1)%images.length;lbImg.src=images[curIdx]});lb.addEventListener(‘click’,e=>{if(e.target===lb){lb.classList.remove(‘open’);document.body.style.overflow=”}});document.addEventListener(‘keydown’,e=>{if(lb.classList.contains(‘open’)){if(e.key===’ArrowLeft’)document.getElementById(‘lbPrev’).click();if(e.key===’ArrowRight’)document.getElementById(‘lbNext’).click();if(e.key===’Escape’){lb.classList.remove(‘open’);document.body.style.overflow=”}}});document.addEventListener(‘mousemove’,e=>{const x=(e.clientX/window.innerWidth-.5),y=(e.clientY/window.innerHeight-.5);const o1=document.querySelector(‘.o1’),o2=document.querySelector(‘.o2’),o3=document.querySelector(‘.o3’);if(o1)o1.style.transform=’translate(‘+x*40+’px,’+y*25+’px)’;if(o2)o2.style.transform=’translate(‘+-x*30+’px,’+-y*20+’px)’;if(o3)o3.style.transform=’translate(‘+x*20+’px,’+y*15+’px)’});