class_visualserver.rst 785 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/3.5/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/3.5/doc/classes/VisualServer.xml.
  6. .. _class_VisualServer:
  7. VisualServer
  8. ============
  9. **Inherits:** :ref:`Object<class_Object>`
  10. Server for anything visible.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. Server for anything visible. The visual server is the API backend for everything visible. The whole scene system mounts on it to display.
  15. The visual server is completely opaque, the internals are entirely implementation specific and cannot be accessed.
  16. The visual server can be used to bypass the scene system entirely.
  17. Resources are created using the ``*_create`` functions.
  18. All objects are drawn to a viewport. You can use the :ref:`Viewport<class_Viewport>` attached to the :ref:`SceneTree<class_SceneTree>` or you can create one yourself with :ref:`viewport_create<class_VisualServer_method_viewport_create>`. When using a custom scenario or canvas, the scenario or canvas needs to be attached to the viewport using :ref:`viewport_set_scenario<class_VisualServer_method_viewport_set_scenario>` or :ref:`viewport_attach_canvas<class_VisualServer_method_viewport_attach_canvas>`.
  19. In 3D, all visual objects must be associated with a scenario. The scenario is a visual representation of the world. If accessing the visual server from a running game, the scenario can be accessed from the scene tree from any :ref:`Spatial<class_Spatial>` node with :ref:`Spatial.get_world<class_Spatial_method_get_world>`. Otherwise, a scenario can be created with :ref:`scenario_create<class_VisualServer_method_scenario_create>`.
  20. Similarly, in 2D, a canvas is needed to draw all canvas items.
  21. In 3D, all visible objects are comprised of a resource and an instance. A resource can be a mesh, a particle system, a light, or any other 3D object. In order to be visible resources must be attached to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>`. The instance must also be attached to the scenario using :ref:`instance_set_scenario<class_VisualServer_method_instance_set_scenario>` in order to be visible.
  22. In 2D, all visible objects are some form of canvas item. In order to be visible, a canvas item needs to be the child of a canvas attached to a viewport, or it needs to be the child of another canvas item that is eventually attached to the canvas.
  23. .. rst-class:: classref-introduction-group
  24. Tutorials
  25. ---------
  26. - :doc:`../tutorials/performance/using_servers`
  27. .. rst-class:: classref-reftable-group
  28. Properties
  29. ----------
  30. .. table::
  31. :widths: auto
  32. +-------------------------+-----------------------------------------------------------------------------+
  33. | :ref:`bool<class_bool>` | :ref:`render_loop_enabled<class_VisualServer_property_render_loop_enabled>` |
  34. +-------------------------+-----------------------------------------------------------------------------+
  35. .. rst-class:: classref-reftable-group
  36. Methods
  37. -------
  38. .. table::
  39. :widths: auto
  40. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | void | :ref:`black_bars_set_images<class_VisualServer_method_black_bars_set_images>` **(** :ref:`RID<class_RID>` left, :ref:`RID<class_RID>` top, :ref:`RID<class_RID>` right, :ref:`RID<class_RID>` bottom **)** |
  42. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | void | :ref:`black_bars_set_margins<class_VisualServer_method_black_bars_set_margins>` **(** :ref:`int<class_int>` left, :ref:`int<class_int>` top, :ref:`int<class_int>` right, :ref:`int<class_int>` bottom **)** |
  44. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`RID<class_RID>` | :ref:`camera_create<class_VisualServer_method_camera_create>` **(** **)** |
  46. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | void | :ref:`camera_set_cull_mask<class_VisualServer_method_camera_set_cull_mask>` **(** :ref:`RID<class_RID>` camera, :ref:`int<class_int>` layers **)** |
  48. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | void | :ref:`camera_set_environment<class_VisualServer_method_camera_set_environment>` **(** :ref:`RID<class_RID>` camera, :ref:`RID<class_RID>` env **)** |
  50. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | void | :ref:`camera_set_frustum<class_VisualServer_method_camera_set_frustum>` **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` size, :ref:`Vector2<class_Vector2>` offset, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)** |
  52. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | void | :ref:`camera_set_orthogonal<class_VisualServer_method_camera_set_orthogonal>` **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` size, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)** |
  54. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | void | :ref:`camera_set_perspective<class_VisualServer_method_camera_set_perspective>` **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` fovy_degrees, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)** |
  56. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. | void | :ref:`camera_set_transform<class_VisualServer_method_camera_set_transform>` **(** :ref:`RID<class_RID>` camera, :ref:`Transform<class_Transform>` transform **)** |
  58. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  59. | void | :ref:`camera_set_use_vertical_aspect<class_VisualServer_method_camera_set_use_vertical_aspect>` **(** :ref:`RID<class_RID>` camera, :ref:`bool<class_bool>` enable **)** |
  60. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  61. | :ref:`RID<class_RID>` | :ref:`canvas_create<class_VisualServer_method_canvas_create>` **(** **)** |
  62. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  63. | void | :ref:`canvas_item_add_circle<class_VisualServer_method_canvas_item_add_circle>` **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` pos, :ref:`float<class_float>` radius, :ref:`Color<class_Color>` color **)** |
  64. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  65. | void | :ref:`canvas_item_add_clip_ignore<class_VisualServer_method_canvas_item_add_clip_ignore>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` ignore **)** |
  66. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  67. | void | :ref:`canvas_item_add_line<class_VisualServer_method_canvas_item_add_line>` **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to, :ref:`Color<class_Color>` color, :ref:`float<class_float>` width=1.0, :ref:`bool<class_bool>` antialiased=false **)** |
  68. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  69. | void | :ref:`canvas_item_add_mesh<class_VisualServer_method_canvas_item_add_mesh>` **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`Transform2D<class_Transform2D>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ), :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)** |
  70. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  71. | void | :ref:`canvas_item_add_multimesh<class_VisualServer_method_canvas_item_add_multimesh>` **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)** |
  72. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  73. | void | :ref:`canvas_item_add_nine_patch<class_VisualServer_method_canvas_item_add_nine_patch>` **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Rect2<class_Rect2>` source, :ref:`RID<class_RID>` texture, :ref:`Vector2<class_Vector2>` topleft, :ref:`Vector2<class_Vector2>` bottomright, :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` x_axis_mode=0, :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` y_axis_mode=0, :ref:`bool<class_bool>` draw_center=true, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`RID<class_RID>` normal_map **)** |
  74. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  75. | void | :ref:`canvas_item_add_particles<class_VisualServer_method_canvas_item_add_particles>` **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` particles, :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)** |
  76. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  77. | void | :ref:`canvas_item_add_polygon<class_VisualServer_method_canvas_item_add_polygon>` **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs=PoolVector2Array( ), :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` antialiased=false **)** |
  78. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  79. | void | :ref:`canvas_item_add_polyline<class_VisualServer_method_canvas_item_add_polyline>` **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`float<class_float>` width=1.0, :ref:`bool<class_bool>` antialiased=false **)** |
  80. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  81. | void | :ref:`canvas_item_add_primitive<class_VisualServer_method_canvas_item_add_primitive>` **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs, :ref:`RID<class_RID>` texture, :ref:`float<class_float>` width=1.0, :ref:`RID<class_RID>` normal_map **)** |
  82. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  83. | void | :ref:`canvas_item_add_rect<class_VisualServer_method_canvas_item_add_rect>` **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Color<class_Color>` color **)** |
  84. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  85. | void | :ref:`canvas_item_add_set_transform<class_VisualServer_method_canvas_item_add_set_transform>` **(** :ref:`RID<class_RID>` item, :ref:`Transform2D<class_Transform2D>` transform **)** |
  86. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  87. | void | :ref:`canvas_item_add_texture_rect<class_VisualServer_method_canvas_item_add_texture_rect>` **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`bool<class_bool>` tile=false, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`bool<class_bool>` transpose=false, :ref:`RID<class_RID>` normal_map **)** |
  88. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  89. | void | :ref:`canvas_item_add_texture_rect_region<class_VisualServer_method_canvas_item_add_texture_rect_region>` **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`Rect2<class_Rect2>` src_rect, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`bool<class_bool>` transpose=false, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` clip_uv=true **)** |
  90. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  91. | void | :ref:`canvas_item_add_triangle_array<class_VisualServer_method_canvas_item_add_triangle_array>` **(** :ref:`RID<class_RID>` item, :ref:`PoolIntArray<class_PoolIntArray>` indices, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs=PoolVector2Array( ), :ref:`PoolIntArray<class_PoolIntArray>` bones=PoolIntArray( ), :ref:`PoolRealArray<class_PoolRealArray>` weights=PoolRealArray( ), :ref:`RID<class_RID>` texture, :ref:`int<class_int>` count=-1, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` antialiased=false, :ref:`bool<class_bool>` antialiasing_use_indices=false **)** |
  92. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  93. | void | :ref:`canvas_item_clear<class_VisualServer_method_canvas_item_clear>` **(** :ref:`RID<class_RID>` item **)** |
  94. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  95. | :ref:`RID<class_RID>` | :ref:`canvas_item_create<class_VisualServer_method_canvas_item_create>` **(** **)** |
  96. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  97. | void | :ref:`canvas_item_set_clip<class_VisualServer_method_canvas_item_set_clip>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` clip **)** |
  98. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  99. | void | :ref:`canvas_item_set_copy_to_backbuffer<class_VisualServer_method_canvas_item_set_copy_to_backbuffer>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled, :ref:`Rect2<class_Rect2>` rect **)** |
  100. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  101. | void | :ref:`canvas_item_set_custom_rect<class_VisualServer_method_canvas_item_set_custom_rect>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` use_custom_rect, :ref:`Rect2<class_Rect2>` rect=Rect2( 0, 0, 0, 0 ) **)** |
  102. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  103. | void | :ref:`canvas_item_set_distance_field_mode<class_VisualServer_method_canvas_item_set_distance_field_mode>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)** |
  104. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  105. | void | :ref:`canvas_item_set_draw_behind_parent<class_VisualServer_method_canvas_item_set_draw_behind_parent>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)** |
  106. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  107. | void | :ref:`canvas_item_set_draw_index<class_VisualServer_method_canvas_item_set_draw_index>` **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` index **)** |
  108. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  109. | void | :ref:`canvas_item_set_light_mask<class_VisualServer_method_canvas_item_set_light_mask>` **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` mask **)** |
  110. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  111. | void | :ref:`canvas_item_set_material<class_VisualServer_method_canvas_item_set_material>` **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` material **)** |
  112. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  113. | void | :ref:`canvas_item_set_modulate<class_VisualServer_method_canvas_item_set_modulate>` **(** :ref:`RID<class_RID>` item, :ref:`Color<class_Color>` color **)** |
  114. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  115. | void | :ref:`canvas_item_set_parent<class_VisualServer_method_canvas_item_set_parent>` **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` parent **)** |
  116. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  117. | void | :ref:`canvas_item_set_self_modulate<class_VisualServer_method_canvas_item_set_self_modulate>` **(** :ref:`RID<class_RID>` item, :ref:`Color<class_Color>` color **)** |
  118. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  119. | void | :ref:`canvas_item_set_sort_children_by_y<class_VisualServer_method_canvas_item_set_sort_children_by_y>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)** |
  120. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  121. | void | :ref:`canvas_item_set_transform<class_VisualServer_method_canvas_item_set_transform>` **(** :ref:`RID<class_RID>` item, :ref:`Transform2D<class_Transform2D>` transform **)** |
  122. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  123. | void | :ref:`canvas_item_set_use_parent_material<class_VisualServer_method_canvas_item_set_use_parent_material>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)** |
  124. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  125. | void | :ref:`canvas_item_set_visible<class_VisualServer_method_canvas_item_set_visible>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` visible **)** |
  126. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  127. | void | :ref:`canvas_item_set_z_as_relative_to_parent<class_VisualServer_method_canvas_item_set_z_as_relative_to_parent>` **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)** |
  128. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  129. | void | :ref:`canvas_item_set_z_index<class_VisualServer_method_canvas_item_set_z_index>` **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` z_index **)** |
  130. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  131. | void | :ref:`canvas_light_attach_to_canvas<class_VisualServer_method_canvas_light_attach_to_canvas>` **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` canvas **)** |
  132. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  133. | :ref:`RID<class_RID>` | :ref:`canvas_light_create<class_VisualServer_method_canvas_light_create>` **(** **)** |
  134. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  135. | void | :ref:`canvas_light_occluder_attach_to_canvas<class_VisualServer_method_canvas_light_occluder_attach_to_canvas>` **(** :ref:`RID<class_RID>` occluder, :ref:`RID<class_RID>` canvas **)** |
  136. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  137. | :ref:`RID<class_RID>` | :ref:`canvas_light_occluder_create<class_VisualServer_method_canvas_light_occluder_create>` **(** **)** |
  138. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  139. | void | :ref:`canvas_light_occluder_set_enabled<class_VisualServer_method_canvas_light_occluder_set_enabled>` **(** :ref:`RID<class_RID>` occluder, :ref:`bool<class_bool>` enabled **)** |
  140. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  141. | void | :ref:`canvas_light_occluder_set_light_mask<class_VisualServer_method_canvas_light_occluder_set_light_mask>` **(** :ref:`RID<class_RID>` occluder, :ref:`int<class_int>` mask **)** |
  142. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  143. | void | :ref:`canvas_light_occluder_set_polygon<class_VisualServer_method_canvas_light_occluder_set_polygon>` **(** :ref:`RID<class_RID>` occluder, :ref:`RID<class_RID>` polygon **)** |
  144. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  145. | void | :ref:`canvas_light_occluder_set_transform<class_VisualServer_method_canvas_light_occluder_set_transform>` **(** :ref:`RID<class_RID>` occluder, :ref:`Transform2D<class_Transform2D>` transform **)** |
  146. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  147. | void | :ref:`canvas_light_set_color<class_VisualServer_method_canvas_light_set_color>` **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)** |
  148. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  149. | void | :ref:`canvas_light_set_enabled<class_VisualServer_method_canvas_light_set_enabled>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)** |
  150. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  151. | void | :ref:`canvas_light_set_energy<class_VisualServer_method_canvas_light_set_energy>` **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` energy **)** |
  152. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  153. | void | :ref:`canvas_light_set_height<class_VisualServer_method_canvas_light_set_height>` **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` height **)** |
  154. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  155. | void | :ref:`canvas_light_set_item_cull_mask<class_VisualServer_method_canvas_light_set_item_cull_mask>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)** |
  156. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  157. | void | :ref:`canvas_light_set_item_shadow_cull_mask<class_VisualServer_method_canvas_light_set_item_shadow_cull_mask>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)** |
  158. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  159. | void | :ref:`canvas_light_set_layer_range<class_VisualServer_method_canvas_light_set_layer_range>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` min_layer, :ref:`int<class_int>` max_layer **)** |
  160. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  161. | void | :ref:`canvas_light_set_mode<class_VisualServer_method_canvas_light_set_mode>` **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` mode **)** |
  162. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  163. | void | :ref:`canvas_light_set_scale<class_VisualServer_method_canvas_light_set_scale>` **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` scale **)** |
  164. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  165. | void | :ref:`canvas_light_set_shadow_buffer_size<class_VisualServer_method_canvas_light_set_shadow_buffer_size>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` size **)** |
  166. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  167. | void | :ref:`canvas_light_set_shadow_color<class_VisualServer_method_canvas_light_set_shadow_color>` **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)** |
  168. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  169. | void | :ref:`canvas_light_set_shadow_enabled<class_VisualServer_method_canvas_light_set_shadow_enabled>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)** |
  170. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  171. | void | :ref:`canvas_light_set_shadow_filter<class_VisualServer_method_canvas_light_set_shadow_filter>` **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` filter **)** |
  172. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  173. | void | :ref:`canvas_light_set_shadow_gradient_length<class_VisualServer_method_canvas_light_set_shadow_gradient_length>` **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` length **)** |
  174. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  175. | void | :ref:`canvas_light_set_shadow_smooth<class_VisualServer_method_canvas_light_set_shadow_smooth>` **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` smooth **)** |
  176. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  177. | void | :ref:`canvas_light_set_texture<class_VisualServer_method_canvas_light_set_texture>` **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` texture **)** |
  178. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  179. | void | :ref:`canvas_light_set_texture_offset<class_VisualServer_method_canvas_light_set_texture_offset>` **(** :ref:`RID<class_RID>` light, :ref:`Vector2<class_Vector2>` offset **)** |
  180. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  181. | void | :ref:`canvas_light_set_transform<class_VisualServer_method_canvas_light_set_transform>` **(** :ref:`RID<class_RID>` light, :ref:`Transform2D<class_Transform2D>` transform **)** |
  182. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  183. | void | :ref:`canvas_light_set_z_range<class_VisualServer_method_canvas_light_set_z_range>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` min_z, :ref:`int<class_int>` max_z **)** |
  184. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  185. | :ref:`RID<class_RID>` | :ref:`canvas_occluder_polygon_create<class_VisualServer_method_canvas_occluder_polygon_create>` **(** **)** |
  186. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  187. | void | :ref:`canvas_occluder_polygon_set_cull_mode<class_VisualServer_method_canvas_occluder_polygon_set_cull_mode>` **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` mode **)** |
  188. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  189. | void | :ref:`canvas_occluder_polygon_set_shape<class_VisualServer_method_canvas_occluder_polygon_set_shape>` **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`PoolVector2Array<class_PoolVector2Array>` shape, :ref:`bool<class_bool>` closed **)** |
  190. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  191. | void | :ref:`canvas_occluder_polygon_set_shape_as_lines<class_VisualServer_method_canvas_occluder_polygon_set_shape_as_lines>` **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`PoolVector2Array<class_PoolVector2Array>` shape **)** |
  192. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  193. | void | :ref:`canvas_set_item_mirroring<class_VisualServer_method_canvas_set_item_mirroring>` **(** :ref:`RID<class_RID>` canvas, :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` mirroring **)** |
  194. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  195. | void | :ref:`canvas_set_modulate<class_VisualServer_method_canvas_set_modulate>` **(** :ref:`RID<class_RID>` canvas, :ref:`Color<class_Color>` color **)** |
  196. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  197. | :ref:`RID<class_RID>` | :ref:`directional_light_create<class_VisualServer_method_directional_light_create>` **(** **)** |
  198. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  199. | void | :ref:`draw<class_VisualServer_method_draw>` **(** :ref:`bool<class_bool>` swap_buffers=true, :ref:`float<class_float>` frame_step=0.0 **)** |
  200. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  201. | :ref:`RID<class_RID>` | :ref:`environment_create<class_VisualServer_method_environment_create>` **(** **)** |
  202. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  203. | void | :ref:`environment_set_adjustment<class_VisualServer_method_environment_set_adjustment>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` brightness, :ref:`float<class_float>` contrast, :ref:`float<class_float>` saturation, :ref:`RID<class_RID>` ramp **)** |
  204. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  205. | void | :ref:`environment_set_ambient_light<class_VisualServer_method_environment_set_ambient_light>` **(** :ref:`RID<class_RID>` env, :ref:`Color<class_Color>` color, :ref:`float<class_float>` energy=1.0, :ref:`float<class_float>` sky_contibution=0.0 **)** |
  206. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  207. | void | :ref:`environment_set_background<class_VisualServer_method_environment_set_background>` **(** :ref:`RID<class_RID>` env, :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` bg **)** |
  208. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  209. | void | :ref:`environment_set_bg_color<class_VisualServer_method_environment_set_bg_color>` **(** :ref:`RID<class_RID>` env, :ref:`Color<class_Color>` color **)** |
  210. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  211. | void | :ref:`environment_set_bg_energy<class_VisualServer_method_environment_set_bg_energy>` **(** :ref:`RID<class_RID>` env, :ref:`float<class_float>` energy **)** |
  212. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  213. | void | :ref:`environment_set_canvas_max_layer<class_VisualServer_method_environment_set_canvas_max_layer>` **(** :ref:`RID<class_RID>` env, :ref:`int<class_int>` max_layer **)** |
  214. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  215. | void | :ref:`environment_set_dof_blur_far<class_VisualServer_method_environment_set_dof_blur_far>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` distance, :ref:`float<class_float>` transition, :ref:`float<class_float>` far_amount, :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` quality **)** |
  216. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  217. | void | :ref:`environment_set_dof_blur_near<class_VisualServer_method_environment_set_dof_blur_near>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` distance, :ref:`float<class_float>` transition, :ref:`float<class_float>` far_amount, :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` quality **)** |
  218. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  219. | void | :ref:`environment_set_fog<class_VisualServer_method_environment_set_fog>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`Color<class_Color>` color, :ref:`Color<class_Color>` sun_color, :ref:`float<class_float>` sun_amount **)** |
  220. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  221. | void | :ref:`environment_set_fog_depth<class_VisualServer_method_environment_set_fog_depth>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` depth_begin, :ref:`float<class_float>` depth_end, :ref:`float<class_float>` depth_curve, :ref:`bool<class_bool>` transmit, :ref:`float<class_float>` transmit_curve **)** |
  222. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  223. | void | :ref:`environment_set_fog_height<class_VisualServer_method_environment_set_fog_height>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` min_height, :ref:`float<class_float>` max_height, :ref:`float<class_float>` height_curve **)** |
  224. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  225. | void | :ref:`environment_set_glow<class_VisualServer_method_environment_set_glow>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`int<class_int>` level_flags, :ref:`float<class_float>` intensity, :ref:`float<class_float>` strength, :ref:`float<class_float>` bloom_threshold, :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` blend_mode, :ref:`float<class_float>` hdr_bleed_threshold, :ref:`float<class_float>` hdr_bleed_scale, :ref:`float<class_float>` hdr_luminance_cap, :ref:`bool<class_bool>` bicubic_upscale, :ref:`bool<class_bool>` high_quality **)** |
  226. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  227. | void | :ref:`environment_set_sky<class_VisualServer_method_environment_set_sky>` **(** :ref:`RID<class_RID>` env, :ref:`RID<class_RID>` sky **)** |
  228. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  229. | void | :ref:`environment_set_sky_custom_fov<class_VisualServer_method_environment_set_sky_custom_fov>` **(** :ref:`RID<class_RID>` env, :ref:`float<class_float>` scale **)** |
  230. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  231. | void | :ref:`environment_set_sky_orientation<class_VisualServer_method_environment_set_sky_orientation>` **(** :ref:`RID<class_RID>` env, :ref:`Basis<class_Basis>` orientation **)** |
  232. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  233. | void | :ref:`environment_set_ssao<class_VisualServer_method_environment_set_ssao>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` radius, :ref:`float<class_float>` intensity, :ref:`float<class_float>` radius2, :ref:`float<class_float>` intensity2, :ref:`float<class_float>` bias, :ref:`float<class_float>` light_affect, :ref:`float<class_float>` ao_channel_affect, :ref:`Color<class_Color>` color, :ref:`EnvironmentSSAOQuality<enum_VisualServer_EnvironmentSSAOQuality>` quality, :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` blur, :ref:`float<class_float>` bilateral_sharpness **)** |
  234. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  235. | void | :ref:`environment_set_ssr<class_VisualServer_method_environment_set_ssr>` **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`int<class_int>` max_steps, :ref:`float<class_float>` fade_in, :ref:`float<class_float>` fade_out, :ref:`float<class_float>` depth_tolerance, :ref:`bool<class_bool>` roughness **)** |
  236. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  237. | void | :ref:`environment_set_tonemap<class_VisualServer_method_environment_set_tonemap>` **(** :ref:`RID<class_RID>` env, :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` tone_mapper, :ref:`float<class_float>` exposure, :ref:`float<class_float>` white, :ref:`bool<class_bool>` auto_exposure, :ref:`float<class_float>` min_luminance, :ref:`float<class_float>` max_luminance, :ref:`float<class_float>` auto_exp_speed, :ref:`float<class_float>` auto_exp_grey **)** |
  238. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  239. | void | :ref:`finish<class_VisualServer_method_finish>` **(** **)** |
  240. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  241. | void | :ref:`force_draw<class_VisualServer_method_force_draw>` **(** :ref:`bool<class_bool>` swap_buffers=true, :ref:`float<class_float>` frame_step=0.0 **)** |
  242. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  243. | void | :ref:`force_sync<class_VisualServer_method_force_sync>` **(** **)** |
  244. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  245. | void | :ref:`free_rid<class_VisualServer_method_free_rid>` **(** :ref:`RID<class_RID>` rid **)** |
  246. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  247. | :ref:`int<class_int>` | :ref:`get_render_info<class_VisualServer_method_get_render_info>` **(** :ref:`RenderInfo<enum_VisualServer_RenderInfo>` info **)** |
  248. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  249. | :ref:`RID<class_RID>` | :ref:`get_test_cube<class_VisualServer_method_get_test_cube>` **(** **)** |
  250. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  251. | :ref:`RID<class_RID>` | :ref:`get_test_texture<class_VisualServer_method_get_test_texture>` **(** **)** |
  252. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  253. | :ref:`String<class_String>` | :ref:`get_video_adapter_name<class_VisualServer_method_get_video_adapter_name>` **(** **)** |const| |
  254. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  255. | :ref:`String<class_String>` | :ref:`get_video_adapter_vendor<class_VisualServer_method_get_video_adapter_vendor>` **(** **)** |const| |
  256. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  257. | :ref:`RID<class_RID>` | :ref:`get_white_texture<class_VisualServer_method_get_white_texture>` **(** **)** |
  258. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  259. | :ref:`RID<class_RID>` | :ref:`gi_probe_create<class_VisualServer_method_gi_probe_create>` **(** **)** |
  260. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  261. | :ref:`float<class_float>` | :ref:`gi_probe_get_bias<class_VisualServer_method_gi_probe_get_bias>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  262. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  263. | :ref:`AABB<class_AABB>` | :ref:`gi_probe_get_bounds<class_VisualServer_method_gi_probe_get_bounds>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  264. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  265. | :ref:`float<class_float>` | :ref:`gi_probe_get_cell_size<class_VisualServer_method_gi_probe_get_cell_size>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  266. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  267. | :ref:`PoolIntArray<class_PoolIntArray>` | :ref:`gi_probe_get_dynamic_data<class_VisualServer_method_gi_probe_get_dynamic_data>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  268. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  269. | :ref:`int<class_int>` | :ref:`gi_probe_get_dynamic_range<class_VisualServer_method_gi_probe_get_dynamic_range>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  270. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  271. | :ref:`float<class_float>` | :ref:`gi_probe_get_energy<class_VisualServer_method_gi_probe_get_energy>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  272. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  273. | :ref:`float<class_float>` | :ref:`gi_probe_get_normal_bias<class_VisualServer_method_gi_probe_get_normal_bias>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  274. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  275. | :ref:`float<class_float>` | :ref:`gi_probe_get_propagation<class_VisualServer_method_gi_probe_get_propagation>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  276. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  277. | :ref:`Transform<class_Transform>` | :ref:`gi_probe_get_to_cell_xform<class_VisualServer_method_gi_probe_get_to_cell_xform>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  278. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  279. | :ref:`bool<class_bool>` | :ref:`gi_probe_is_compressed<class_VisualServer_method_gi_probe_is_compressed>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  280. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  281. | :ref:`bool<class_bool>` | :ref:`gi_probe_is_interior<class_VisualServer_method_gi_probe_is_interior>` **(** :ref:`RID<class_RID>` probe **)** |const| |
  282. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  283. | void | :ref:`gi_probe_set_bias<class_VisualServer_method_gi_probe_set_bias>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` bias **)** |
  284. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  285. | void | :ref:`gi_probe_set_bounds<class_VisualServer_method_gi_probe_set_bounds>` **(** :ref:`RID<class_RID>` probe, :ref:`AABB<class_AABB>` bounds **)** |
  286. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  287. | void | :ref:`gi_probe_set_cell_size<class_VisualServer_method_gi_probe_set_cell_size>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` range **)** |
  288. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  289. | void | :ref:`gi_probe_set_compress<class_VisualServer_method_gi_probe_set_compress>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)** |
  290. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  291. | void | :ref:`gi_probe_set_dynamic_data<class_VisualServer_method_gi_probe_set_dynamic_data>` **(** :ref:`RID<class_RID>` probe, :ref:`PoolIntArray<class_PoolIntArray>` data **)** |
  292. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  293. | void | :ref:`gi_probe_set_dynamic_range<class_VisualServer_method_gi_probe_set_dynamic_range>` **(** :ref:`RID<class_RID>` probe, :ref:`int<class_int>` range **)** |
  294. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  295. | void | :ref:`gi_probe_set_energy<class_VisualServer_method_gi_probe_set_energy>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` energy **)** |
  296. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  297. | void | :ref:`gi_probe_set_interior<class_VisualServer_method_gi_probe_set_interior>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)** |
  298. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  299. | void | :ref:`gi_probe_set_normal_bias<class_VisualServer_method_gi_probe_set_normal_bias>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` bias **)** |
  300. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  301. | void | :ref:`gi_probe_set_propagation<class_VisualServer_method_gi_probe_set_propagation>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` propagation **)** |
  302. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  303. | void | :ref:`gi_probe_set_to_cell_xform<class_VisualServer_method_gi_probe_set_to_cell_xform>` **(** :ref:`RID<class_RID>` probe, :ref:`Transform<class_Transform>` xform **)** |
  304. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  305. | :ref:`bool<class_bool>` | :ref:`has_changed<class_VisualServer_method_has_changed>` **(** :ref:`ChangedPriority<enum_VisualServer_ChangedPriority>` queried_priority=0 **)** |const| |
  306. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  307. | :ref:`bool<class_bool>` | :ref:`has_feature<class_VisualServer_method_has_feature>` **(** :ref:`Features<enum_VisualServer_Features>` feature **)** |const| |
  308. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  309. | :ref:`bool<class_bool>` | :ref:`has_os_feature<class_VisualServer_method_has_os_feature>` **(** :ref:`String<class_String>` feature **)** |const| |
  310. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  311. | void | :ref:`immediate_begin<class_VisualServer_method_immediate_begin>` **(** :ref:`RID<class_RID>` immediate, :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` primitive, :ref:`RID<class_RID>` texture **)** |
  312. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  313. | void | :ref:`immediate_clear<class_VisualServer_method_immediate_clear>` **(** :ref:`RID<class_RID>` immediate **)** |
  314. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  315. | void | :ref:`immediate_color<class_VisualServer_method_immediate_color>` **(** :ref:`RID<class_RID>` immediate, :ref:`Color<class_Color>` color **)** |
  316. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  317. | :ref:`RID<class_RID>` | :ref:`immediate_create<class_VisualServer_method_immediate_create>` **(** **)** |
  318. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  319. | void | :ref:`immediate_end<class_VisualServer_method_immediate_end>` **(** :ref:`RID<class_RID>` immediate **)** |
  320. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  321. | :ref:`RID<class_RID>` | :ref:`immediate_get_material<class_VisualServer_method_immediate_get_material>` **(** :ref:`RID<class_RID>` immediate **)** |const| |
  322. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  323. | void | :ref:`immediate_normal<class_VisualServer_method_immediate_normal>` **(** :ref:`RID<class_RID>` immediate, :ref:`Vector3<class_Vector3>` normal **)** |
  324. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  325. | void | :ref:`immediate_set_material<class_VisualServer_method_immediate_set_material>` **(** :ref:`RID<class_RID>` immediate, :ref:`RID<class_RID>` material **)** |
  326. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  327. | void | :ref:`immediate_tangent<class_VisualServer_method_immediate_tangent>` **(** :ref:`RID<class_RID>` immediate, :ref:`Plane<class_Plane>` tangent **)** |
  328. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  329. | void | :ref:`immediate_uv<class_VisualServer_method_immediate_uv>` **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` tex_uv **)** |
  330. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  331. | void | :ref:`immediate_uv2<class_VisualServer_method_immediate_uv2>` **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` tex_uv **)** |
  332. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  333. | void | :ref:`immediate_vertex<class_VisualServer_method_immediate_vertex>` **(** :ref:`RID<class_RID>` immediate, :ref:`Vector3<class_Vector3>` vertex **)** |
  334. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  335. | void | :ref:`immediate_vertex_2d<class_VisualServer_method_immediate_vertex_2d>` **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` vertex **)** |
  336. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  337. | void | :ref:`init<class_VisualServer_method_init>` **(** **)** |
  338. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  339. | void | :ref:`instance_attach_object_instance_id<class_VisualServer_method_instance_attach_object_instance_id>` **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` id **)** |
  340. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  341. | void | :ref:`instance_attach_skeleton<class_VisualServer_method_instance_attach_skeleton>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` skeleton **)** |
  342. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  343. | :ref:`RID<class_RID>` | :ref:`instance_create<class_VisualServer_method_instance_create>` **(** **)** |
  344. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  345. | :ref:`RID<class_RID>` | :ref:`instance_create2<class_VisualServer_method_instance_create2>` **(** :ref:`RID<class_RID>` base, :ref:`RID<class_RID>` scenario **)** |
  346. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  347. | void | :ref:`instance_geometry_set_as_instance_lod<class_VisualServer_method_instance_geometry_set_as_instance_lod>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` as_lod_of_instance **)** |
  348. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  349. | void | :ref:`instance_geometry_set_cast_shadows_setting<class_VisualServer_method_instance_geometry_set_cast_shadows_setting>` **(** :ref:`RID<class_RID>` instance, :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` shadow_casting_setting **)** |
  350. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  351. | void | :ref:`instance_geometry_set_draw_range<class_VisualServer_method_instance_geometry_set_draw_range>` **(** :ref:`RID<class_RID>` instance, :ref:`float<class_float>` min, :ref:`float<class_float>` max, :ref:`float<class_float>` min_margin, :ref:`float<class_float>` max_margin **)** |
  352. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  353. | void | :ref:`instance_geometry_set_flag<class_VisualServer_method_instance_geometry_set_flag>` **(** :ref:`RID<class_RID>` instance, :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` flag, :ref:`bool<class_bool>` enabled **)** |
  354. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  355. | void | :ref:`instance_geometry_set_material_overlay<class_VisualServer_method_instance_geometry_set_material_overlay>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` material **)** |
  356. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  357. | void | :ref:`instance_geometry_set_material_override<class_VisualServer_method_instance_geometry_set_material_override>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` material **)** |
  358. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  359. | void | :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` base **)** |
  360. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  361. | void | :ref:`instance_set_blend_shape_weight<class_VisualServer_method_instance_set_blend_shape_weight>` **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` shape, :ref:`float<class_float>` weight **)** |
  362. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  363. | void | :ref:`instance_set_custom_aabb<class_VisualServer_method_instance_set_custom_aabb>` **(** :ref:`RID<class_RID>` instance, :ref:`AABB<class_AABB>` aabb **)** |
  364. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  365. | void | :ref:`instance_set_exterior<class_VisualServer_method_instance_set_exterior>` **(** :ref:`RID<class_RID>` instance, :ref:`bool<class_bool>` enabled **)** |
  366. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  367. | void | :ref:`instance_set_extra_visibility_margin<class_VisualServer_method_instance_set_extra_visibility_margin>` **(** :ref:`RID<class_RID>` instance, :ref:`float<class_float>` margin **)** |
  368. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  369. | void | :ref:`instance_set_layer_mask<class_VisualServer_method_instance_set_layer_mask>` **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` mask **)** |
  370. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  371. | void | :ref:`instance_set_scenario<class_VisualServer_method_instance_set_scenario>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` scenario **)** |
  372. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  373. | void | :ref:`instance_set_surface_material<class_VisualServer_method_instance_set_surface_material>` **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` surface, :ref:`RID<class_RID>` material **)** |
  374. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  375. | void | :ref:`instance_set_transform<class_VisualServer_method_instance_set_transform>` **(** :ref:`RID<class_RID>` instance, :ref:`Transform<class_Transform>` transform **)** |
  376. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  377. | void | :ref:`instance_set_use_lightmap<class_VisualServer_method_instance_set_use_lightmap>` **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` lightmap_instance, :ref:`RID<class_RID>` lightmap, :ref:`int<class_int>` lightmap_slice=-1, :ref:`Rect2<class_Rect2>` lightmap_uv_rect=Rect2( 0, 0, 1, 1 ) **)** |
  378. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  379. | void | :ref:`instance_set_visible<class_VisualServer_method_instance_set_visible>` **(** :ref:`RID<class_RID>` instance, :ref:`bool<class_bool>` visible **)** |
  380. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  381. | :ref:`Array<class_Array>` | :ref:`instances_cull_aabb<class_VisualServer_method_instances_cull_aabb>` **(** :ref:`AABB<class_AABB>` aabb, :ref:`RID<class_RID>` scenario **)** |const| |
  382. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  383. | :ref:`Array<class_Array>` | :ref:`instances_cull_convex<class_VisualServer_method_instances_cull_convex>` **(** :ref:`Array<class_Array>` convex, :ref:`RID<class_RID>` scenario **)** |const| |
  384. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  385. | :ref:`Array<class_Array>` | :ref:`instances_cull_ray<class_VisualServer_method_instances_cull_ray>` **(** :ref:`Vector3<class_Vector3>` from, :ref:`Vector3<class_Vector3>` to, :ref:`RID<class_RID>` scenario **)** |const| |
  386. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  387. | void | :ref:`light_directional_set_blend_splits<class_VisualServer_method_light_directional_set_blend_splits>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enable **)** |
  388. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  389. | void | :ref:`light_directional_set_shadow_depth_range_mode<class_VisualServer_method_light_directional_set_shadow_depth_range_mode>` **(** :ref:`RID<class_RID>` light, :ref:`LightDirectionalShadowDepthRangeMode<enum_VisualServer_LightDirectionalShadowDepthRangeMode>` range_mode **)** |
  390. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  391. | void | :ref:`light_directional_set_shadow_mode<class_VisualServer_method_light_directional_set_shadow_mode>` **(** :ref:`RID<class_RID>` light, :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` mode **)** |
  392. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  393. | void | :ref:`light_omni_set_shadow_detail<class_VisualServer_method_light_omni_set_shadow_detail>` **(** :ref:`RID<class_RID>` light, :ref:`LightOmniShadowDetail<enum_VisualServer_LightOmniShadowDetail>` detail **)** |
  394. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  395. | void | :ref:`light_omni_set_shadow_mode<class_VisualServer_method_light_omni_set_shadow_mode>` **(** :ref:`RID<class_RID>` light, :ref:`LightOmniShadowMode<enum_VisualServer_LightOmniShadowMode>` mode **)** |
  396. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  397. | void | :ref:`light_set_bake_mode<class_VisualServer_method_light_set_bake_mode>` **(** :ref:`RID<class_RID>` light, :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` bake_mode **)** |
  398. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  399. | void | :ref:`light_set_color<class_VisualServer_method_light_set_color>` **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)** |
  400. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  401. | void | :ref:`light_set_cull_mask<class_VisualServer_method_light_set_cull_mask>` **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)** |
  402. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  403. | void | :ref:`light_set_negative<class_VisualServer_method_light_set_negative>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enable **)** |
  404. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  405. | void | :ref:`light_set_param<class_VisualServer_method_light_set_param>` **(** :ref:`RID<class_RID>` light, :ref:`LightParam<enum_VisualServer_LightParam>` param, :ref:`float<class_float>` value **)** |
  406. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  407. | void | :ref:`light_set_projector<class_VisualServer_method_light_set_projector>` **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` texture **)** |
  408. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  409. | void | :ref:`light_set_reverse_cull_face_mode<class_VisualServer_method_light_set_reverse_cull_face_mode>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)** |
  410. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  411. | void | :ref:`light_set_shadow<class_VisualServer_method_light_set_shadow>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)** |
  412. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  413. | void | :ref:`light_set_shadow_color<class_VisualServer_method_light_set_shadow_color>` **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)** |
  414. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  415. | void | :ref:`light_set_use_gi<class_VisualServer_method_light_set_use_gi>` **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)** |
  416. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  417. | :ref:`RID<class_RID>` | :ref:`lightmap_capture_create<class_VisualServer_method_lightmap_capture_create>` **(** **)** |
  418. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  419. | :ref:`AABB<class_AABB>` | :ref:`lightmap_capture_get_bounds<class_VisualServer_method_lightmap_capture_get_bounds>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  420. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  421. | :ref:`float<class_float>` | :ref:`lightmap_capture_get_energy<class_VisualServer_method_lightmap_capture_get_energy>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  422. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  423. | :ref:`PoolByteArray<class_PoolByteArray>` | :ref:`lightmap_capture_get_octree<class_VisualServer_method_lightmap_capture_get_octree>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  424. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  425. | :ref:`int<class_int>` | :ref:`lightmap_capture_get_octree_cell_subdiv<class_VisualServer_method_lightmap_capture_get_octree_cell_subdiv>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  426. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  427. | :ref:`Transform<class_Transform>` | :ref:`lightmap_capture_get_octree_cell_transform<class_VisualServer_method_lightmap_capture_get_octree_cell_transform>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  428. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  429. | :ref:`bool<class_bool>` | :ref:`lightmap_capture_is_interior<class_VisualServer_method_lightmap_capture_is_interior>` **(** :ref:`RID<class_RID>` capture **)** |const| |
  430. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  431. | void | :ref:`lightmap_capture_set_bounds<class_VisualServer_method_lightmap_capture_set_bounds>` **(** :ref:`RID<class_RID>` capture, :ref:`AABB<class_AABB>` bounds **)** |
  432. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  433. | void | :ref:`lightmap_capture_set_energy<class_VisualServer_method_lightmap_capture_set_energy>` **(** :ref:`RID<class_RID>` capture, :ref:`float<class_float>` energy **)** |
  434. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  435. | void | :ref:`lightmap_capture_set_interior<class_VisualServer_method_lightmap_capture_set_interior>` **(** :ref:`RID<class_RID>` capture, :ref:`bool<class_bool>` interior **)** |
  436. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  437. | void | :ref:`lightmap_capture_set_octree<class_VisualServer_method_lightmap_capture_set_octree>` **(** :ref:`RID<class_RID>` capture, :ref:`PoolByteArray<class_PoolByteArray>` octree **)** |
  438. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  439. | void | :ref:`lightmap_capture_set_octree_cell_subdiv<class_VisualServer_method_lightmap_capture_set_octree_cell_subdiv>` **(** :ref:`RID<class_RID>` capture, :ref:`int<class_int>` subdiv **)** |
  440. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  441. | void | :ref:`lightmap_capture_set_octree_cell_transform<class_VisualServer_method_lightmap_capture_set_octree_cell_transform>` **(** :ref:`RID<class_RID>` capture, :ref:`Transform<class_Transform>` xform **)** |
  442. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  443. | :ref:`RID<class_RID>` | :ref:`make_sphere_mesh<class_VisualServer_method_make_sphere_mesh>` **(** :ref:`int<class_int>` latitudes, :ref:`int<class_int>` longitudes, :ref:`float<class_float>` radius **)** |
  444. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  445. | :ref:`RID<class_RID>` | :ref:`material_create<class_VisualServer_method_material_create>` **(** **)** |
  446. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  447. | :ref:`Variant<class_Variant>` | :ref:`material_get_param<class_VisualServer_method_material_get_param>` **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter **)** |const| |
  448. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  449. | :ref:`Variant<class_Variant>` | :ref:`material_get_param_default<class_VisualServer_method_material_get_param_default>` **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter **)** |const| |
  450. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  451. | :ref:`RID<class_RID>` | :ref:`material_get_shader<class_VisualServer_method_material_get_shader>` **(** :ref:`RID<class_RID>` shader_material **)** |const| |
  452. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  453. | void | :ref:`material_set_line_width<class_VisualServer_method_material_set_line_width>` **(** :ref:`RID<class_RID>` material, :ref:`float<class_float>` width **)** |
  454. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  455. | void | :ref:`material_set_next_pass<class_VisualServer_method_material_set_next_pass>` **(** :ref:`RID<class_RID>` material, :ref:`RID<class_RID>` next_material **)** |
  456. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  457. | void | :ref:`material_set_param<class_VisualServer_method_material_set_param>` **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter, :ref:`Variant<class_Variant>` value **)** |
  458. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  459. | void | :ref:`material_set_render_priority<class_VisualServer_method_material_set_render_priority>` **(** :ref:`RID<class_RID>` material, :ref:`int<class_int>` priority **)** |
  460. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  461. | void | :ref:`material_set_shader<class_VisualServer_method_material_set_shader>` **(** :ref:`RID<class_RID>` shader_material, :ref:`RID<class_RID>` shader **)** |
  462. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  463. | void | :ref:`mesh_add_surface_from_arrays<class_VisualServer_method_mesh_add_surface_from_arrays>` **(** :ref:`RID<class_RID>` mesh, :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` primitive, :ref:`Array<class_Array>` arrays, :ref:`Array<class_Array>` blend_shapes=[ ], :ref:`int<class_int>` compress_format=2194432 **)** |
  464. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  465. | void | :ref:`mesh_clear<class_VisualServer_method_mesh_clear>` **(** :ref:`RID<class_RID>` mesh **)** |
  466. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  467. | :ref:`RID<class_RID>` | :ref:`mesh_create<class_VisualServer_method_mesh_create>` **(** **)** |
  468. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  469. | :ref:`int<class_int>` | :ref:`mesh_get_blend_shape_count<class_VisualServer_method_mesh_get_blend_shape_count>` **(** :ref:`RID<class_RID>` mesh **)** |const| |
  470. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  471. | :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` | :ref:`mesh_get_blend_shape_mode<class_VisualServer_method_mesh_get_blend_shape_mode>` **(** :ref:`RID<class_RID>` mesh **)** |const| |
  472. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  473. | :ref:`AABB<class_AABB>` | :ref:`mesh_get_custom_aabb<class_VisualServer_method_mesh_get_custom_aabb>` **(** :ref:`RID<class_RID>` mesh **)** |const| |
  474. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  475. | :ref:`int<class_int>` | :ref:`mesh_get_surface_count<class_VisualServer_method_mesh_get_surface_count>` **(** :ref:`RID<class_RID>` mesh **)** |const| |
  476. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  477. | void | :ref:`mesh_remove_surface<class_VisualServer_method_mesh_remove_surface>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` index **)** |
  478. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  479. | void | :ref:`mesh_set_blend_shape_count<class_VisualServer_method_mesh_set_blend_shape_count>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` amount **)** |
  480. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  481. | void | :ref:`mesh_set_blend_shape_mode<class_VisualServer_method_mesh_set_blend_shape_mode>` **(** :ref:`RID<class_RID>` mesh, :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` mode **)** |
  482. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  483. | void | :ref:`mesh_set_custom_aabb<class_VisualServer_method_mesh_set_custom_aabb>` **(** :ref:`RID<class_RID>` mesh, :ref:`AABB<class_AABB>` aabb **)** |
  484. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  485. | :ref:`AABB<class_AABB>` | :ref:`mesh_surface_get_aabb<class_VisualServer_method_mesh_surface_get_aabb>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  486. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  487. | :ref:`PoolByteArray<class_PoolByteArray>` | :ref:`mesh_surface_get_array<class_VisualServer_method_mesh_surface_get_array>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  488. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  489. | :ref:`int<class_int>` | :ref:`mesh_surface_get_array_index_len<class_VisualServer_method_mesh_surface_get_array_index_len>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  490. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  491. | :ref:`int<class_int>` | :ref:`mesh_surface_get_array_len<class_VisualServer_method_mesh_surface_get_array_len>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  492. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  493. | :ref:`Array<class_Array>` | :ref:`mesh_surface_get_arrays<class_VisualServer_method_mesh_surface_get_arrays>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  494. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  495. | :ref:`Array<class_Array>` | :ref:`mesh_surface_get_blend_shape_arrays<class_VisualServer_method_mesh_surface_get_blend_shape_arrays>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  496. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  497. | :ref:`int<class_int>` | :ref:`mesh_surface_get_format<class_VisualServer_method_mesh_surface_get_format>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  498. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  499. | :ref:`int<class_int>` | :ref:`mesh_surface_get_format_offset<class_VisualServer_method_mesh_surface_get_format_offset>` **(** :ref:`int<class_int>` format, :ref:`int<class_int>` vertex_len, :ref:`int<class_int>` index_len, :ref:`int<class_int>` array_index **)** |const| |
  500. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  501. | :ref:`int<class_int>` | :ref:`mesh_surface_get_format_stride<class_VisualServer_method_mesh_surface_get_format_stride>` **(** :ref:`int<class_int>` format, :ref:`int<class_int>` vertex_len, :ref:`int<class_int>` index_len, :ref:`int<class_int>` array_index **)** |const| |
  502. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  503. | :ref:`PoolByteArray<class_PoolByteArray>` | :ref:`mesh_surface_get_index_array<class_VisualServer_method_mesh_surface_get_index_array>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  504. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  505. | :ref:`RID<class_RID>` | :ref:`mesh_surface_get_material<class_VisualServer_method_mesh_surface_get_material>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  506. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  507. | :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` | :ref:`mesh_surface_get_primitive_type<class_VisualServer_method_mesh_surface_get_primitive_type>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  508. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  509. | :ref:`Array<class_Array>` | :ref:`mesh_surface_get_skeleton_aabb<class_VisualServer_method_mesh_surface_get_skeleton_aabb>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const| |
  510. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  511. | void | :ref:`mesh_surface_set_material<class_VisualServer_method_mesh_surface_set_material>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface, :ref:`RID<class_RID>` material **)** |
  512. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  513. | void | :ref:`mesh_surface_update_region<class_VisualServer_method_mesh_surface_update_region>` **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface, :ref:`int<class_int>` offset, :ref:`PoolByteArray<class_PoolByteArray>` data **)** |
  514. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  515. | void | :ref:`multimesh_allocate<class_VisualServer_method_multimesh_allocate>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` instances, :ref:`MultimeshTransformFormat<enum_VisualServer_MultimeshTransformFormat>` transform_format, :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>` color_format, :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` custom_data_format=0 **)** |
  516. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  517. | :ref:`RID<class_RID>` | :ref:`multimesh_create<class_VisualServer_method_multimesh_create>` **(** **)** |
  518. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  519. | :ref:`AABB<class_AABB>` | :ref:`multimesh_get_aabb<class_VisualServer_method_multimesh_get_aabb>` **(** :ref:`RID<class_RID>` multimesh **)** |const| |
  520. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  521. | :ref:`int<class_int>` | :ref:`multimesh_get_instance_count<class_VisualServer_method_multimesh_get_instance_count>` **(** :ref:`RID<class_RID>` multimesh **)** |const| |
  522. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  523. | :ref:`RID<class_RID>` | :ref:`multimesh_get_mesh<class_VisualServer_method_multimesh_get_mesh>` **(** :ref:`RID<class_RID>` multimesh **)** |const| |
  524. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  525. | :ref:`int<class_int>` | :ref:`multimesh_get_visible_instances<class_VisualServer_method_multimesh_get_visible_instances>` **(** :ref:`RID<class_RID>` multimesh **)** |const| |
  526. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  527. | :ref:`Color<class_Color>` | :ref:`multimesh_instance_get_color<class_VisualServer_method_multimesh_instance_get_color>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const| |
  528. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  529. | :ref:`Color<class_Color>` | :ref:`multimesh_instance_get_custom_data<class_VisualServer_method_multimesh_instance_get_custom_data>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const| |
  530. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  531. | :ref:`Transform<class_Transform>` | :ref:`multimesh_instance_get_transform<class_VisualServer_method_multimesh_instance_get_transform>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const| |
  532. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  533. | :ref:`Transform2D<class_Transform2D>` | :ref:`multimesh_instance_get_transform_2d<class_VisualServer_method_multimesh_instance_get_transform_2d>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const| |
  534. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  535. | void | :ref:`multimesh_instance_set_color<class_VisualServer_method_multimesh_instance_set_color>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Color<class_Color>` color **)** |
  536. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  537. | void | :ref:`multimesh_instance_set_custom_data<class_VisualServer_method_multimesh_instance_set_custom_data>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Color<class_Color>` custom_data **)** |
  538. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  539. | void | :ref:`multimesh_instance_set_transform<class_VisualServer_method_multimesh_instance_set_transform>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Transform<class_Transform>` transform **)** |
  540. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  541. | void | :ref:`multimesh_instance_set_transform_2d<class_VisualServer_method_multimesh_instance_set_transform_2d>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Transform2D<class_Transform2D>` transform **)** |
  542. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  543. | void | :ref:`multimesh_set_as_bulk_array<class_VisualServer_method_multimesh_set_as_bulk_array>` **(** :ref:`RID<class_RID>` multimesh, :ref:`PoolRealArray<class_PoolRealArray>` array **)** |
  544. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  545. | void | :ref:`multimesh_set_mesh<class_VisualServer_method_multimesh_set_mesh>` **(** :ref:`RID<class_RID>` multimesh, :ref:`RID<class_RID>` mesh **)** |
  546. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  547. | void | :ref:`multimesh_set_visible_instances<class_VisualServer_method_multimesh_set_visible_instances>` **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` visible **)** |
  548. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  549. | :ref:`RID<class_RID>` | :ref:`omni_light_create<class_VisualServer_method_omni_light_create>` **(** **)** |
  550. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  551. | :ref:`RID<class_RID>` | :ref:`particles_create<class_VisualServer_method_particles_create>` **(** **)** |
  552. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  553. | :ref:`AABB<class_AABB>` | :ref:`particles_get_current_aabb<class_VisualServer_method_particles_get_current_aabb>` **(** :ref:`RID<class_RID>` particles **)** |
  554. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  555. | :ref:`bool<class_bool>` | :ref:`particles_get_emitting<class_VisualServer_method_particles_get_emitting>` **(** :ref:`RID<class_RID>` particles **)** |
  556. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  557. | :ref:`bool<class_bool>` | :ref:`particles_is_inactive<class_VisualServer_method_particles_is_inactive>` **(** :ref:`RID<class_RID>` particles **)** |
  558. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  559. | void | :ref:`particles_request_process<class_VisualServer_method_particles_request_process>` **(** :ref:`RID<class_RID>` particles **)** |
  560. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  561. | void | :ref:`particles_restart<class_VisualServer_method_particles_restart>` **(** :ref:`RID<class_RID>` particles **)** |
  562. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  563. | void | :ref:`particles_set_amount<class_VisualServer_method_particles_set_amount>` **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` amount **)** |
  564. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  565. | void | :ref:`particles_set_custom_aabb<class_VisualServer_method_particles_set_custom_aabb>` **(** :ref:`RID<class_RID>` particles, :ref:`AABB<class_AABB>` aabb **)** |
  566. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  567. | void | :ref:`particles_set_draw_order<class_VisualServer_method_particles_set_draw_order>` **(** :ref:`RID<class_RID>` particles, :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` order **)** |
  568. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  569. | void | :ref:`particles_set_draw_pass_mesh<class_VisualServer_method_particles_set_draw_pass_mesh>` **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` pass, :ref:`RID<class_RID>` mesh **)** |
  570. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  571. | void | :ref:`particles_set_draw_passes<class_VisualServer_method_particles_set_draw_passes>` **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` count **)** |
  572. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  573. | void | :ref:`particles_set_emission_transform<class_VisualServer_method_particles_set_emission_transform>` **(** :ref:`RID<class_RID>` particles, :ref:`Transform<class_Transform>` transform **)** |
  574. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  575. | void | :ref:`particles_set_emitting<class_VisualServer_method_particles_set_emitting>` **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` emitting **)** |
  576. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  577. | void | :ref:`particles_set_explosiveness_ratio<class_VisualServer_method_particles_set_explosiveness_ratio>` **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` ratio **)** |
  578. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  579. | void | :ref:`particles_set_fixed_fps<class_VisualServer_method_particles_set_fixed_fps>` **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` fps **)** |
  580. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  581. | void | :ref:`particles_set_fractional_delta<class_VisualServer_method_particles_set_fractional_delta>` **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` enable **)** |
  582. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  583. | void | :ref:`particles_set_lifetime<class_VisualServer_method_particles_set_lifetime>` **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` lifetime **)** |
  584. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  585. | void | :ref:`particles_set_one_shot<class_VisualServer_method_particles_set_one_shot>` **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` one_shot **)** |
  586. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  587. | void | :ref:`particles_set_pre_process_time<class_VisualServer_method_particles_set_pre_process_time>` **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` time **)** |
  588. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  589. | void | :ref:`particles_set_process_material<class_VisualServer_method_particles_set_process_material>` **(** :ref:`RID<class_RID>` particles, :ref:`RID<class_RID>` material **)** |
  590. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  591. | void | :ref:`particles_set_randomness_ratio<class_VisualServer_method_particles_set_randomness_ratio>` **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` ratio **)** |
  592. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  593. | void | :ref:`particles_set_speed_scale<class_VisualServer_method_particles_set_speed_scale>` **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` scale **)** |
  594. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  595. | void | :ref:`particles_set_use_local_coordinates<class_VisualServer_method_particles_set_use_local_coordinates>` **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` enable **)** |
  596. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  597. | :ref:`RID<class_RID>` | :ref:`reflection_probe_create<class_VisualServer_method_reflection_probe_create>` **(** **)** |
  598. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  599. | void | :ref:`reflection_probe_set_as_interior<class_VisualServer_method_reflection_probe_set_as_interior>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)** |
  600. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  601. | void | :ref:`reflection_probe_set_cull_mask<class_VisualServer_method_reflection_probe_set_cull_mask>` **(** :ref:`RID<class_RID>` probe, :ref:`int<class_int>` layers **)** |
  602. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  603. | void | :ref:`reflection_probe_set_enable_box_projection<class_VisualServer_method_reflection_probe_set_enable_box_projection>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)** |
  604. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  605. | void | :ref:`reflection_probe_set_enable_shadows<class_VisualServer_method_reflection_probe_set_enable_shadows>` **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)** |
  606. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  607. | void | :ref:`reflection_probe_set_extents<class_VisualServer_method_reflection_probe_set_extents>` **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` extents **)** |
  608. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  609. | void | :ref:`reflection_probe_set_intensity<class_VisualServer_method_reflection_probe_set_intensity>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` intensity **)** |
  610. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  611. | void | :ref:`reflection_probe_set_interior_ambient<class_VisualServer_method_reflection_probe_set_interior_ambient>` **(** :ref:`RID<class_RID>` probe, :ref:`Color<class_Color>` color **)** |
  612. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  613. | void | :ref:`reflection_probe_set_interior_ambient_energy<class_VisualServer_method_reflection_probe_set_interior_ambient_energy>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` energy **)** |
  614. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  615. | void | :ref:`reflection_probe_set_interior_ambient_probe_contribution<class_VisualServer_method_reflection_probe_set_interior_ambient_probe_contribution>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` contrib **)** |
  616. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  617. | void | :ref:`reflection_probe_set_max_distance<class_VisualServer_method_reflection_probe_set_max_distance>` **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` distance **)** |
  618. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  619. | void | :ref:`reflection_probe_set_origin_offset<class_VisualServer_method_reflection_probe_set_origin_offset>` **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` offset **)** |
  620. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  621. | void | :ref:`reflection_probe_set_update_mode<class_VisualServer_method_reflection_probe_set_update_mode>` **(** :ref:`RID<class_RID>` probe, :ref:`ReflectionProbeUpdateMode<enum_VisualServer_ReflectionProbeUpdateMode>` mode **)** |
  622. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  623. | void | :ref:`request_frame_drawn_callback<class_VisualServer_method_request_frame_drawn_callback>` **(** :ref:`Object<class_Object>` where, :ref:`String<class_String>` method, :ref:`Variant<class_Variant>` userdata **)** |
  624. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  625. | :ref:`RID<class_RID>` | :ref:`scenario_create<class_VisualServer_method_scenario_create>` **(** **)** |
  626. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  627. | void | :ref:`scenario_set_debug<class_VisualServer_method_scenario_set_debug>` **(** :ref:`RID<class_RID>` scenario, :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` debug_mode **)** |
  628. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  629. | void | :ref:`scenario_set_environment<class_VisualServer_method_scenario_set_environment>` **(** :ref:`RID<class_RID>` scenario, :ref:`RID<class_RID>` environment **)** |
  630. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  631. | void | :ref:`scenario_set_fallback_environment<class_VisualServer_method_scenario_set_fallback_environment>` **(** :ref:`RID<class_RID>` scenario, :ref:`RID<class_RID>` environment **)** |
  632. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  633. | void | :ref:`scenario_set_reflection_atlas_size<class_VisualServer_method_scenario_set_reflection_atlas_size>` **(** :ref:`RID<class_RID>` scenario, :ref:`int<class_int>` size, :ref:`int<class_int>` subdiv **)** |
  634. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  635. | void | :ref:`set_boot_image<class_VisualServer_method_set_boot_image>` **(** :ref:`Image<class_Image>` image, :ref:`Color<class_Color>` color, :ref:`bool<class_bool>` scale, :ref:`bool<class_bool>` use_filter=true **)** |
  636. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  637. | void | :ref:`set_debug_generate_wireframes<class_VisualServer_method_set_debug_generate_wireframes>` **(** :ref:`bool<class_bool>` generate **)** |
  638. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  639. | void | :ref:`set_default_clear_color<class_VisualServer_method_set_default_clear_color>` **(** :ref:`Color<class_Color>` color **)** |
  640. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  641. | void | :ref:`set_shader_async_hidden_forbidden<class_VisualServer_method_set_shader_async_hidden_forbidden>` **(** :ref:`bool<class_bool>` forbidden **)** |
  642. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  643. | void | :ref:`set_shader_time_scale<class_VisualServer_method_set_shader_time_scale>` **(** :ref:`float<class_float>` scale **)** |
  644. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  645. | void | :ref:`set_use_occlusion_culling<class_VisualServer_method_set_use_occlusion_culling>` **(** :ref:`bool<class_bool>` enable **)** |
  646. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  647. | :ref:`RID<class_RID>` | :ref:`shader_create<class_VisualServer_method_shader_create>` **(** **)** |
  648. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  649. | :ref:`String<class_String>` | :ref:`shader_get_code<class_VisualServer_method_shader_get_code>` **(** :ref:`RID<class_RID>` shader **)** |const| |
  650. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  651. | :ref:`RID<class_RID>` | :ref:`shader_get_default_texture_param<class_VisualServer_method_shader_get_default_texture_param>` **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` name **)** |const| |
  652. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  653. | :ref:`Array<class_Array>` | :ref:`shader_get_param_list<class_VisualServer_method_shader_get_param_list>` **(** :ref:`RID<class_RID>` shader **)** |const| |
  654. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  655. | void | :ref:`shader_set_code<class_VisualServer_method_shader_set_code>` **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` code **)** |
  656. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  657. | void | :ref:`shader_set_default_texture_param<class_VisualServer_method_shader_set_default_texture_param>` **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` name, :ref:`RID<class_RID>` texture **)** |
  658. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  659. | void | :ref:`skeleton_allocate<class_VisualServer_method_skeleton_allocate>` **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bones, :ref:`bool<class_bool>` is_2d_skeleton=false **)** |
  660. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  661. | :ref:`Transform<class_Transform>` | :ref:`skeleton_bone_get_transform<class_VisualServer_method_skeleton_bone_get_transform>` **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone **)** |const| |
  662. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  663. | :ref:`Transform2D<class_Transform2D>` | :ref:`skeleton_bone_get_transform_2d<class_VisualServer_method_skeleton_bone_get_transform_2d>` **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone **)** |const| |
  664. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  665. | void | :ref:`skeleton_bone_set_transform<class_VisualServer_method_skeleton_bone_set_transform>` **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone, :ref:`Transform<class_Transform>` transform **)** |
  666. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  667. | void | :ref:`skeleton_bone_set_transform_2d<class_VisualServer_method_skeleton_bone_set_transform_2d>` **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone, :ref:`Transform2D<class_Transform2D>` transform **)** |
  668. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  669. | :ref:`RID<class_RID>` | :ref:`skeleton_create<class_VisualServer_method_skeleton_create>` **(** **)** |
  670. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  671. | :ref:`int<class_int>` | :ref:`skeleton_get_bone_count<class_VisualServer_method_skeleton_get_bone_count>` **(** :ref:`RID<class_RID>` skeleton **)** |const| |
  672. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  673. | :ref:`RID<class_RID>` | :ref:`sky_create<class_VisualServer_method_sky_create>` **(** **)** |
  674. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  675. | void | :ref:`sky_set_texture<class_VisualServer_method_sky_set_texture>` **(** :ref:`RID<class_RID>` sky, :ref:`RID<class_RID>` cube_map, :ref:`int<class_int>` radiance_size **)** |
  676. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  677. | :ref:`RID<class_RID>` | :ref:`spot_light_create<class_VisualServer_method_spot_light_create>` **(** **)** |
  678. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  679. | void | :ref:`sync<class_VisualServer_method_sync>` **(** **)** |
  680. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  681. | void | :ref:`texture_allocate<class_VisualServer_method_texture_allocate>` **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth_3d, :ref:`Format<enum_Image_Format>` format, :ref:`TextureType<enum_VisualServer_TextureType>` type, :ref:`int<class_int>` flags=7 **)** |
  682. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  683. | void | :ref:`texture_bind<class_VisualServer_method_texture_bind>` **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` number **)** |
  684. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  685. | :ref:`RID<class_RID>` | :ref:`texture_create<class_VisualServer_method_texture_create>` **(** **)** |
  686. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  687. | :ref:`RID<class_RID>` | :ref:`texture_create_from_image<class_VisualServer_method_texture_create_from_image>` **(** :ref:`Image<class_Image>` image, :ref:`int<class_int>` flags=7 **)** |
  688. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  689. | :ref:`Array<class_Array>` | :ref:`texture_debug_usage<class_VisualServer_method_texture_debug_usage>` **(** **)** |
  690. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  691. | :ref:`Image<class_Image>` | :ref:`texture_get_data<class_VisualServer_method_texture_get_data>` **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` cube_side=0 **)** |const| |
  692. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  693. | :ref:`int<class_int>` | :ref:`texture_get_depth<class_VisualServer_method_texture_get_depth>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  694. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  695. | :ref:`int<class_int>` | :ref:`texture_get_flags<class_VisualServer_method_texture_get_flags>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  696. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  697. | :ref:`Format<enum_Image_Format>` | :ref:`texture_get_format<class_VisualServer_method_texture_get_format>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  698. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  699. | :ref:`int<class_int>` | :ref:`texture_get_height<class_VisualServer_method_texture_get_height>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  700. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  701. | :ref:`String<class_String>` | :ref:`texture_get_path<class_VisualServer_method_texture_get_path>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  702. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  703. | :ref:`int<class_int>` | :ref:`texture_get_texid<class_VisualServer_method_texture_get_texid>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  704. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  705. | :ref:`TextureType<enum_VisualServer_TextureType>` | :ref:`texture_get_type<class_VisualServer_method_texture_get_type>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  706. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  707. | :ref:`int<class_int>` | :ref:`texture_get_width<class_VisualServer_method_texture_get_width>` **(** :ref:`RID<class_RID>` texture **)** |const| |
  708. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  709. | void | :ref:`texture_set_data<class_VisualServer_method_texture_set_data>` **(** :ref:`RID<class_RID>` texture, :ref:`Image<class_Image>` image, :ref:`int<class_int>` layer=0 **)** |
  710. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  711. | void | :ref:`texture_set_data_partial<class_VisualServer_method_texture_set_data_partial>` **(** :ref:`RID<class_RID>` texture, :ref:`Image<class_Image>` image, :ref:`int<class_int>` src_x, :ref:`int<class_int>` src_y, :ref:`int<class_int>` src_w, :ref:`int<class_int>` src_h, :ref:`int<class_int>` dst_x, :ref:`int<class_int>` dst_y, :ref:`int<class_int>` dst_mip, :ref:`int<class_int>` layer=0 **)** |
  712. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  713. | void | :ref:`texture_set_flags<class_VisualServer_method_texture_set_flags>` **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` flags **)** |
  714. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  715. | void | :ref:`texture_set_path<class_VisualServer_method_texture_set_path>` **(** :ref:`RID<class_RID>` texture, :ref:`String<class_String>` path **)** |
  716. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  717. | void | :ref:`texture_set_proxy<class_VisualServer_method_texture_set_proxy>` **(** :ref:`RID<class_RID>` proxy, :ref:`RID<class_RID>` base **)** |
  718. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  719. | void | :ref:`texture_set_shrink_all_x2_on_set_data<class_VisualServer_method_texture_set_shrink_all_x2_on_set_data>` **(** :ref:`bool<class_bool>` shrink **)** |
  720. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  721. | void | :ref:`texture_set_size_override<class_VisualServer_method_texture_set_size_override>` **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth **)** |
  722. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  723. | void | :ref:`textures_keep_original<class_VisualServer_method_textures_keep_original>` **(** :ref:`bool<class_bool>` enable **)** |
  724. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  725. | void | :ref:`viewport_attach_camera<class_VisualServer_method_viewport_attach_camera>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` camera **)** |
  726. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  727. | void | :ref:`viewport_attach_canvas<class_VisualServer_method_viewport_attach_canvas>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas **)** |
  728. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  729. | void | :ref:`viewport_attach_to_screen<class_VisualServer_method_viewport_attach_to_screen>` **(** :ref:`RID<class_RID>` viewport, :ref:`Rect2<class_Rect2>` rect=Rect2( 0, 0, 0, 0 ), :ref:`int<class_int>` screen=0 **)** |
  730. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  731. | :ref:`RID<class_RID>` | :ref:`viewport_create<class_VisualServer_method_viewport_create>` **(** **)** |
  732. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  733. | void | :ref:`viewport_detach<class_VisualServer_method_viewport_detach>` **(** :ref:`RID<class_RID>` viewport **)** |
  734. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  735. | :ref:`int<class_int>` | :ref:`viewport_get_render_info<class_VisualServer_method_viewport_get_render_info>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` info **)** |
  736. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  737. | :ref:`RID<class_RID>` | :ref:`viewport_get_texture<class_VisualServer_method_viewport_get_texture>` **(** :ref:`RID<class_RID>` viewport **)** |const| |
  738. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  739. | void | :ref:`viewport_remove_canvas<class_VisualServer_method_viewport_remove_canvas>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas **)** |
  740. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  741. | void | :ref:`viewport_set_active<class_VisualServer_method_viewport_set_active>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` active **)** |
  742. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  743. | void | :ref:`viewport_set_canvas_stacking<class_VisualServer_method_viewport_set_canvas_stacking>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas, :ref:`int<class_int>` layer, :ref:`int<class_int>` sublayer **)** |
  744. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  745. | void | :ref:`viewport_set_canvas_transform<class_VisualServer_method_viewport_set_canvas_transform>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas, :ref:`Transform2D<class_Transform2D>` offset **)** |
  746. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  747. | void | :ref:`viewport_set_clear_mode<class_VisualServer_method_viewport_set_clear_mode>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` clear_mode **)** |
  748. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  749. | void | :ref:`viewport_set_debug_draw<class_VisualServer_method_viewport_set_debug_draw>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` draw **)** |
  750. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  751. | void | :ref:`viewport_set_disable_3d<class_VisualServer_method_viewport_set_disable_3d>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)** |
  752. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  753. | void | :ref:`viewport_set_disable_environment<class_VisualServer_method_viewport_set_disable_environment>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)** |
  754. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  755. | void | :ref:`viewport_set_global_canvas_transform<class_VisualServer_method_viewport_set_global_canvas_transform>` **(** :ref:`RID<class_RID>` viewport, :ref:`Transform2D<class_Transform2D>` transform **)** |
  756. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  757. | void | :ref:`viewport_set_hdr<class_VisualServer_method_viewport_set_hdr>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)** |
  758. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  759. | void | :ref:`viewport_set_hide_canvas<class_VisualServer_method_viewport_set_hide_canvas>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` hidden **)** |
  760. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  761. | void | :ref:`viewport_set_hide_scenario<class_VisualServer_method_viewport_set_hide_scenario>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` hidden **)** |
  762. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  763. | void | :ref:`viewport_set_msaa<class_VisualServer_method_viewport_set_msaa>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` msaa **)** |
  764. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  765. | void | :ref:`viewport_set_parent_viewport<class_VisualServer_method_viewport_set_parent_viewport>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` parent_viewport **)** |
  766. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  767. | void | :ref:`viewport_set_render_direct_to_screen<class_VisualServer_method_viewport_set_render_direct_to_screen>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)** |
  768. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  769. | void | :ref:`viewport_set_scenario<class_VisualServer_method_viewport_set_scenario>` **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` scenario **)** |
  770. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  771. | void | :ref:`viewport_set_shadow_atlas_quadrant_subdivision<class_VisualServer_method_viewport_set_shadow_atlas_quadrant_subdivision>` **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` quadrant, :ref:`int<class_int>` subdivision **)** |
  772. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  773. | void | :ref:`viewport_set_shadow_atlas_size<class_VisualServer_method_viewport_set_shadow_atlas_size>` **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` size **)** |
  774. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  775. | void | :ref:`viewport_set_sharpen_intensity<class_VisualServer_method_viewport_set_sharpen_intensity>` **(** :ref:`RID<class_RID>` viewport, :ref:`float<class_float>` intensity **)** |
  776. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  777. | void | :ref:`viewport_set_size<class_VisualServer_method_viewport_set_size>` **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` width, :ref:`int<class_int>` height **)** |
  778. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  779. | void | :ref:`viewport_set_transparent_background<class_VisualServer_method_viewport_set_transparent_background>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)** |
  780. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  781. | void | :ref:`viewport_set_update_mode<class_VisualServer_method_viewport_set_update_mode>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` update_mode **)** |
  782. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  783. | void | :ref:`viewport_set_usage<class_VisualServer_method_viewport_set_usage>` **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` usage **)** |
  784. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  785. | void | :ref:`viewport_set_use_32_bpc_depth<class_VisualServer_method_viewport_set_use_32_bpc_depth>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)** |
  786. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  787. | void | :ref:`viewport_set_use_arvr<class_VisualServer_method_viewport_set_use_arvr>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` use_arvr **)** |
  788. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  789. | void | :ref:`viewport_set_use_debanding<class_VisualServer_method_viewport_set_use_debanding>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` debanding **)** |
  790. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  791. | void | :ref:`viewport_set_use_fxaa<class_VisualServer_method_viewport_set_use_fxaa>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` fxaa **)** |
  792. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  793. | void | :ref:`viewport_set_vflip<class_VisualServer_method_viewport_set_vflip>` **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)** |
  794. +---------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  795. .. rst-class:: classref-section-separator
  796. ----
  797. .. rst-class:: classref-descriptions-group
  798. Signals
  799. -------
  800. .. _class_VisualServer_signal_frame_post_draw:
  801. .. rst-class:: classref-signal
  802. **frame_post_draw** **(** **)**
  803. Emitted at the end of the frame, after the VisualServer has finished updating all the Viewports.
  804. .. rst-class:: classref-item-separator
  805. ----
  806. .. _class_VisualServer_signal_frame_pre_draw:
  807. .. rst-class:: classref-signal
  808. **frame_pre_draw** **(** **)**
  809. Emitted at the beginning of the frame, before the VisualServer updates all the Viewports.
  810. .. rst-class:: classref-section-separator
  811. ----
  812. .. rst-class:: classref-descriptions-group
  813. Enumerations
  814. ------------
  815. .. _enum_VisualServer_CubeMapSide:
  816. .. rst-class:: classref-enumeration
  817. enum **CubeMapSide**:
  818. .. _class_VisualServer_constant_CUBEMAP_LEFT:
  819. .. rst-class:: classref-enumeration-constant
  820. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_LEFT** = ``0``
  821. Marks the left side of a cubemap.
  822. .. _class_VisualServer_constant_CUBEMAP_RIGHT:
  823. .. rst-class:: classref-enumeration-constant
  824. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_RIGHT** = ``1``
  825. Marks the right side of a cubemap.
  826. .. _class_VisualServer_constant_CUBEMAP_BOTTOM:
  827. .. rst-class:: classref-enumeration-constant
  828. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_BOTTOM** = ``2``
  829. Marks the bottom side of a cubemap.
  830. .. _class_VisualServer_constant_CUBEMAP_TOP:
  831. .. rst-class:: classref-enumeration-constant
  832. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_TOP** = ``3``
  833. Marks the top side of a cubemap.
  834. .. _class_VisualServer_constant_CUBEMAP_FRONT:
  835. .. rst-class:: classref-enumeration-constant
  836. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_FRONT** = ``4``
  837. Marks the front side of a cubemap.
  838. .. _class_VisualServer_constant_CUBEMAP_BACK:
  839. .. rst-class:: classref-enumeration-constant
  840. :ref:`CubeMapSide<enum_VisualServer_CubeMapSide>` **CUBEMAP_BACK** = ``5``
  841. Marks the back side of a cubemap.
  842. .. rst-class:: classref-item-separator
  843. ----
  844. .. _enum_VisualServer_TextureType:
  845. .. rst-class:: classref-enumeration
  846. enum **TextureType**:
  847. .. _class_VisualServer_constant_TEXTURE_TYPE_2D:
  848. .. rst-class:: classref-enumeration-constant
  849. :ref:`TextureType<enum_VisualServer_TextureType>` **TEXTURE_TYPE_2D** = ``0``
  850. Normal texture with 2 dimensions, width and height.
  851. .. _class_VisualServer_constant_TEXTURE_TYPE_CUBEMAP:
  852. .. rst-class:: classref-enumeration-constant
  853. :ref:`TextureType<enum_VisualServer_TextureType>` **TEXTURE_TYPE_CUBEMAP** = ``2``
  854. Texture made up of six faces, can be looked up with a ``vec3`` in shader.
  855. .. _class_VisualServer_constant_TEXTURE_TYPE_2D_ARRAY:
  856. .. rst-class:: classref-enumeration-constant
  857. :ref:`TextureType<enum_VisualServer_TextureType>` **TEXTURE_TYPE_2D_ARRAY** = ``3``
  858. An array of 2-dimensional textures.
  859. .. _class_VisualServer_constant_TEXTURE_TYPE_3D:
  860. .. rst-class:: classref-enumeration-constant
  861. :ref:`TextureType<enum_VisualServer_TextureType>` **TEXTURE_TYPE_3D** = ``4``
  862. A 3-dimensional texture with width, height, and depth.
  863. .. rst-class:: classref-item-separator
  864. ----
  865. .. _enum_VisualServer_TextureFlags:
  866. .. rst-class:: classref-enumeration
  867. enum **TextureFlags**:
  868. .. _class_VisualServer_constant_TEXTURE_FLAG_MIPMAPS:
  869. .. rst-class:: classref-enumeration-constant
  870. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_MIPMAPS** = ``1``
  871. Generates mipmaps, which are smaller versions of the same texture to use when zoomed out, keeping the aspect ratio.
  872. .. _class_VisualServer_constant_TEXTURE_FLAG_REPEAT:
  873. .. rst-class:: classref-enumeration-constant
  874. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_REPEAT** = ``2``
  875. Repeats the texture (instead of clamp to edge).
  876. .. _class_VisualServer_constant_TEXTURE_FLAG_FILTER:
  877. .. rst-class:: classref-enumeration-constant
  878. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_FILTER** = ``4``
  879. Uses a magnifying filter, to enable smooth zooming in of the texture.
  880. .. _class_VisualServer_constant_TEXTURE_FLAG_ANISOTROPIC_FILTER:
  881. .. rst-class:: classref-enumeration-constant
  882. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_ANISOTROPIC_FILTER** = ``8``
  883. Uses anisotropic mipmap filtering. Generates smaller versions of the same texture with different aspect ratios.
  884. This results in better-looking textures when viewed from oblique angles.
  885. .. _class_VisualServer_constant_TEXTURE_FLAG_CONVERT_TO_LINEAR:
  886. .. rst-class:: classref-enumeration-constant
  887. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_CONVERT_TO_LINEAR** = ``16``
  888. Converts the texture to the sRGB color space.
  889. .. _class_VisualServer_constant_TEXTURE_FLAG_MIRRORED_REPEAT:
  890. .. rst-class:: classref-enumeration-constant
  891. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_MIRRORED_REPEAT** = ``32``
  892. Repeats the texture with alternate sections mirrored.
  893. .. _class_VisualServer_constant_TEXTURE_FLAG_USED_FOR_STREAMING:
  894. .. rst-class:: classref-enumeration-constant
  895. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAG_USED_FOR_STREAMING** = ``2048``
  896. Texture is a video surface.
  897. .. _class_VisualServer_constant_TEXTURE_FLAGS_DEFAULT:
  898. .. rst-class:: classref-enumeration-constant
  899. :ref:`TextureFlags<enum_VisualServer_TextureFlags>` **TEXTURE_FLAGS_DEFAULT** = ``7``
  900. Default flags. :ref:`TEXTURE_FLAG_MIPMAPS<class_VisualServer_constant_TEXTURE_FLAG_MIPMAPS>`, :ref:`TEXTURE_FLAG_REPEAT<class_VisualServer_constant_TEXTURE_FLAG_REPEAT>` and :ref:`TEXTURE_FLAG_FILTER<class_VisualServer_constant_TEXTURE_FLAG_FILTER>` are enabled.
  901. .. rst-class:: classref-item-separator
  902. ----
  903. .. _enum_VisualServer_ShaderMode:
  904. .. rst-class:: classref-enumeration
  905. enum **ShaderMode**:
  906. .. _class_VisualServer_constant_SHADER_SPATIAL:
  907. .. rst-class:: classref-enumeration-constant
  908. :ref:`ShaderMode<enum_VisualServer_ShaderMode>` **SHADER_SPATIAL** = ``0``
  909. Shader is a 3D shader.
  910. .. _class_VisualServer_constant_SHADER_CANVAS_ITEM:
  911. .. rst-class:: classref-enumeration-constant
  912. :ref:`ShaderMode<enum_VisualServer_ShaderMode>` **SHADER_CANVAS_ITEM** = ``1``
  913. Shader is a 2D shader.
  914. .. _class_VisualServer_constant_SHADER_PARTICLES:
  915. .. rst-class:: classref-enumeration-constant
  916. :ref:`ShaderMode<enum_VisualServer_ShaderMode>` **SHADER_PARTICLES** = ``2``
  917. Shader is a particle shader.
  918. .. _class_VisualServer_constant_SHADER_MAX:
  919. .. rst-class:: classref-enumeration-constant
  920. :ref:`ShaderMode<enum_VisualServer_ShaderMode>` **SHADER_MAX** = ``3``
  921. Represents the size of the :ref:`ShaderMode<enum_VisualServer_ShaderMode>` enum.
  922. .. rst-class:: classref-item-separator
  923. ----
  924. .. _enum_VisualServer_ArrayType:
  925. .. rst-class:: classref-enumeration
  926. enum **ArrayType**:
  927. .. _class_VisualServer_constant_ARRAY_VERTEX:
  928. .. rst-class:: classref-enumeration-constant
  929. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_VERTEX** = ``0``
  930. Array is a vertex array.
  931. .. _class_VisualServer_constant_ARRAY_NORMAL:
  932. .. rst-class:: classref-enumeration-constant
  933. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_NORMAL** = ``1``
  934. Array is a normal array.
  935. .. _class_VisualServer_constant_ARRAY_TANGENT:
  936. .. rst-class:: classref-enumeration-constant
  937. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_TANGENT** = ``2``
  938. Array is a tangent array.
  939. .. _class_VisualServer_constant_ARRAY_COLOR:
  940. .. rst-class:: classref-enumeration-constant
  941. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_COLOR** = ``3``
  942. Array is a color array.
  943. .. _class_VisualServer_constant_ARRAY_TEX_UV:
  944. .. rst-class:: classref-enumeration-constant
  945. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_TEX_UV** = ``4``
  946. Array is an UV coordinates array.
  947. .. _class_VisualServer_constant_ARRAY_TEX_UV2:
  948. .. rst-class:: classref-enumeration-constant
  949. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_TEX_UV2** = ``5``
  950. Array is an UV coordinates array for the second UV coordinates.
  951. .. _class_VisualServer_constant_ARRAY_BONES:
  952. .. rst-class:: classref-enumeration-constant
  953. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_BONES** = ``6``
  954. Array contains bone information.
  955. .. _class_VisualServer_constant_ARRAY_WEIGHTS:
  956. .. rst-class:: classref-enumeration-constant
  957. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_WEIGHTS** = ``7``
  958. Array is weight information.
  959. .. _class_VisualServer_constant_ARRAY_INDEX:
  960. .. rst-class:: classref-enumeration-constant
  961. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_INDEX** = ``8``
  962. Array is index array.
  963. .. _class_VisualServer_constant_ARRAY_MAX:
  964. .. rst-class:: classref-enumeration-constant
  965. :ref:`ArrayType<enum_VisualServer_ArrayType>` **ARRAY_MAX** = ``9``
  966. Represents the size of the :ref:`ArrayType<enum_VisualServer_ArrayType>` enum.
  967. .. rst-class:: classref-item-separator
  968. ----
  969. .. _enum_VisualServer_ArrayFormat:
  970. .. rst-class:: classref-enumeration
  971. enum **ArrayFormat**:
  972. .. _class_VisualServer_constant_ARRAY_FORMAT_VERTEX:
  973. .. rst-class:: classref-enumeration-constant
  974. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_VERTEX** = ``1``
  975. Flag used to mark a vertex array.
  976. .. _class_VisualServer_constant_ARRAY_FORMAT_NORMAL:
  977. .. rst-class:: classref-enumeration-constant
  978. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_NORMAL** = ``2``
  979. Flag used to mark a normal array.
  980. .. _class_VisualServer_constant_ARRAY_FORMAT_TANGENT:
  981. .. rst-class:: classref-enumeration-constant
  982. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_TANGENT** = ``4``
  983. Flag used to mark a tangent array.
  984. .. _class_VisualServer_constant_ARRAY_FORMAT_COLOR:
  985. .. rst-class:: classref-enumeration-constant
  986. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_COLOR** = ``8``
  987. Flag used to mark a color array.
  988. .. _class_VisualServer_constant_ARRAY_FORMAT_TEX_UV:
  989. .. rst-class:: classref-enumeration-constant
  990. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_TEX_UV** = ``16``
  991. Flag used to mark an UV coordinates array.
  992. .. _class_VisualServer_constant_ARRAY_FORMAT_TEX_UV2:
  993. .. rst-class:: classref-enumeration-constant
  994. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_TEX_UV2** = ``32``
  995. Flag used to mark an UV coordinates array for the second UV coordinates.
  996. .. _class_VisualServer_constant_ARRAY_FORMAT_BONES:
  997. .. rst-class:: classref-enumeration-constant
  998. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_BONES** = ``64``
  999. Flag used to mark a bone information array.
  1000. .. _class_VisualServer_constant_ARRAY_FORMAT_WEIGHTS:
  1001. .. rst-class:: classref-enumeration-constant
  1002. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_WEIGHTS** = ``128``
  1003. Flag used to mark a weights array.
  1004. .. _class_VisualServer_constant_ARRAY_FORMAT_INDEX:
  1005. .. rst-class:: classref-enumeration-constant
  1006. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FORMAT_INDEX** = ``256``
  1007. Flag used to mark an index array.
  1008. .. _class_VisualServer_constant_ARRAY_COMPRESS_VERTEX:
  1009. .. rst-class:: classref-enumeration-constant
  1010. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_VERTEX** = ``512``
  1011. Flag used to mark a compressed (half float) vertex array.
  1012. .. _class_VisualServer_constant_ARRAY_COMPRESS_NORMAL:
  1013. .. rst-class:: classref-enumeration-constant
  1014. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_NORMAL** = ``1024``
  1015. Flag used to mark a compressed (half float) normal array.
  1016. .. _class_VisualServer_constant_ARRAY_COMPRESS_TANGENT:
  1017. .. rst-class:: classref-enumeration-constant
  1018. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_TANGENT** = ``2048``
  1019. Flag used to mark a compressed (half float) tangent array.
  1020. .. _class_VisualServer_constant_ARRAY_COMPRESS_COLOR:
  1021. .. rst-class:: classref-enumeration-constant
  1022. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_COLOR** = ``4096``
  1023. Flag used to mark a compressed (half float) color array.
  1024. .. _class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV:
  1025. .. rst-class:: classref-enumeration-constant
  1026. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_TEX_UV** = ``8192``
  1027. Flag used to mark a compressed (half float) UV coordinates array.
  1028. .. _class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV2:
  1029. .. rst-class:: classref-enumeration-constant
  1030. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_TEX_UV2** = ``16384``
  1031. Flag used to mark a compressed (half float) UV coordinates array for the second UV coordinates.
  1032. .. _class_VisualServer_constant_ARRAY_COMPRESS_BONES:
  1033. .. rst-class:: classref-enumeration-constant
  1034. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_BONES** = ``32768``
  1035. Flag used to mark a compressed bone array.
  1036. .. _class_VisualServer_constant_ARRAY_COMPRESS_WEIGHTS:
  1037. .. rst-class:: classref-enumeration-constant
  1038. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_WEIGHTS** = ``65536``
  1039. Flag used to mark a compressed (half float) weight array.
  1040. .. _class_VisualServer_constant_ARRAY_COMPRESS_INDEX:
  1041. .. rst-class:: classref-enumeration-constant
  1042. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_INDEX** = ``131072``
  1043. Flag used to mark a compressed index array.
  1044. .. _class_VisualServer_constant_ARRAY_FLAG_USE_2D_VERTICES:
  1045. .. rst-class:: classref-enumeration-constant
  1046. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FLAG_USE_2D_VERTICES** = ``262144``
  1047. Flag used to mark that the array contains 2D vertices.
  1048. .. _class_VisualServer_constant_ARRAY_FLAG_USE_16_BIT_BONES:
  1049. .. rst-class:: classref-enumeration-constant
  1050. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FLAG_USE_16_BIT_BONES** = ``524288``
  1051. Flag used to mark that the array uses 16-bit bones instead of 8-bit.
  1052. .. _class_VisualServer_constant_ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION:
  1053. .. rst-class:: classref-enumeration-constant
  1054. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION** = ``2097152``
  1055. Flag used to mark that the array uses an octahedral representation of normal and tangent vectors rather than cartesian.
  1056. .. _class_VisualServer_constant_ARRAY_COMPRESS_DEFAULT:
  1057. .. rst-class:: classref-enumeration-constant
  1058. :ref:`ArrayFormat<enum_VisualServer_ArrayFormat>` **ARRAY_COMPRESS_DEFAULT** = ``2194432``
  1059. Used to set flags :ref:`ARRAY_COMPRESS_NORMAL<class_VisualServer_constant_ARRAY_COMPRESS_NORMAL>`, :ref:`ARRAY_COMPRESS_TANGENT<class_VisualServer_constant_ARRAY_COMPRESS_TANGENT>`, :ref:`ARRAY_COMPRESS_COLOR<class_VisualServer_constant_ARRAY_COMPRESS_COLOR>`, :ref:`ARRAY_COMPRESS_TEX_UV<class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV>`, :ref:`ARRAY_COMPRESS_TEX_UV2<class_VisualServer_constant_ARRAY_COMPRESS_TEX_UV2>`, :ref:`ARRAY_COMPRESS_WEIGHTS<class_VisualServer_constant_ARRAY_COMPRESS_WEIGHTS>`, and :ref:`ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION<class_VisualServer_constant_ARRAY_FLAG_USE_OCTAHEDRAL_COMPRESSION>` quickly.
  1060. .. rst-class:: classref-item-separator
  1061. ----
  1062. .. _enum_VisualServer_PrimitiveType:
  1063. .. rst-class:: classref-enumeration
  1064. enum **PrimitiveType**:
  1065. .. _class_VisualServer_constant_PRIMITIVE_POINTS:
  1066. .. rst-class:: classref-enumeration-constant
  1067. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_POINTS** = ``0``
  1068. Primitive to draw consists of points.
  1069. .. _class_VisualServer_constant_PRIMITIVE_LINES:
  1070. .. rst-class:: classref-enumeration-constant
  1071. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_LINES** = ``1``
  1072. Primitive to draw consists of lines.
  1073. .. _class_VisualServer_constant_PRIMITIVE_LINE_STRIP:
  1074. .. rst-class:: classref-enumeration-constant
  1075. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_LINE_STRIP** = ``2``
  1076. Primitive to draw consists of a line strip from start to end.
  1077. .. _class_VisualServer_constant_PRIMITIVE_LINE_LOOP:
  1078. .. rst-class:: classref-enumeration-constant
  1079. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_LINE_LOOP** = ``3``
  1080. Primitive to draw consists of a line loop (a line strip with a line between the last and the first vertex).
  1081. .. _class_VisualServer_constant_PRIMITIVE_TRIANGLES:
  1082. .. rst-class:: classref-enumeration-constant
  1083. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_TRIANGLES** = ``4``
  1084. Primitive to draw consists of triangles.
  1085. .. _class_VisualServer_constant_PRIMITIVE_TRIANGLE_STRIP:
  1086. .. rst-class:: classref-enumeration-constant
  1087. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_TRIANGLE_STRIP** = ``5``
  1088. Primitive to draw consists of a triangle strip (the last 3 vertices are always combined to make a triangle).
  1089. .. _class_VisualServer_constant_PRIMITIVE_TRIANGLE_FAN:
  1090. .. rst-class:: classref-enumeration-constant
  1091. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_TRIANGLE_FAN** = ``6``
  1092. Primitive to draw consists of a triangle strip (the last 2 vertices are always combined with the first to make a triangle).
  1093. .. _class_VisualServer_constant_PRIMITIVE_MAX:
  1094. .. rst-class:: classref-enumeration-constant
  1095. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **PRIMITIVE_MAX** = ``7``
  1096. Represents the size of the :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` enum.
  1097. .. rst-class:: classref-item-separator
  1098. ----
  1099. .. _enum_VisualServer_BlendShapeMode:
  1100. .. rst-class:: classref-enumeration
  1101. enum **BlendShapeMode**:
  1102. .. _class_VisualServer_constant_BLEND_SHAPE_MODE_NORMALIZED:
  1103. .. rst-class:: classref-enumeration-constant
  1104. :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` **BLEND_SHAPE_MODE_NORMALIZED** = ``0``
  1105. Blend shapes are normalized.
  1106. .. _class_VisualServer_constant_BLEND_SHAPE_MODE_RELATIVE:
  1107. .. rst-class:: classref-enumeration-constant
  1108. :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` **BLEND_SHAPE_MODE_RELATIVE** = ``1``
  1109. Blend shapes are relative to base weight.
  1110. .. rst-class:: classref-item-separator
  1111. ----
  1112. .. _enum_VisualServer_LightType:
  1113. .. rst-class:: classref-enumeration
  1114. enum **LightType**:
  1115. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL:
  1116. .. rst-class:: classref-enumeration-constant
  1117. :ref:`LightType<enum_VisualServer_LightType>` **LIGHT_DIRECTIONAL** = ``0``
  1118. Is a directional (sun) light.
  1119. .. _class_VisualServer_constant_LIGHT_OMNI:
  1120. .. rst-class:: classref-enumeration-constant
  1121. :ref:`LightType<enum_VisualServer_LightType>` **LIGHT_OMNI** = ``1``
  1122. Is an omni light.
  1123. .. _class_VisualServer_constant_LIGHT_SPOT:
  1124. .. rst-class:: classref-enumeration-constant
  1125. :ref:`LightType<enum_VisualServer_LightType>` **LIGHT_SPOT** = ``2``
  1126. Is a spot light.
  1127. .. rst-class:: classref-item-separator
  1128. ----
  1129. .. _enum_VisualServer_LightParam:
  1130. .. rst-class:: classref-enumeration
  1131. enum **LightParam**:
  1132. .. _class_VisualServer_constant_LIGHT_PARAM_ENERGY:
  1133. .. rst-class:: classref-enumeration-constant
  1134. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_ENERGY** = ``0``
  1135. The light's energy.
  1136. .. _class_VisualServer_constant_LIGHT_PARAM_INDIRECT_ENERGY:
  1137. .. rst-class:: classref-enumeration-constant
  1138. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_INDIRECT_ENERGY** = ``1``
  1139. Secondary multiplier used with indirect light (light bounces).
  1140. .. _class_VisualServer_constant_LIGHT_PARAM_SIZE:
  1141. .. rst-class:: classref-enumeration-constant
  1142. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SIZE** = ``2``
  1143. The light's size, currently only used for soft shadows in baked lightmaps.
  1144. .. _class_VisualServer_constant_LIGHT_PARAM_SPECULAR:
  1145. .. rst-class:: classref-enumeration-constant
  1146. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SPECULAR** = ``3``
  1147. The light's influence on specularity.
  1148. .. _class_VisualServer_constant_LIGHT_PARAM_RANGE:
  1149. .. rst-class:: classref-enumeration-constant
  1150. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_RANGE** = ``4``
  1151. The light's range.
  1152. .. _class_VisualServer_constant_LIGHT_PARAM_ATTENUATION:
  1153. .. rst-class:: classref-enumeration-constant
  1154. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_ATTENUATION** = ``5``
  1155. The light's attenuation.
  1156. .. _class_VisualServer_constant_LIGHT_PARAM_SPOT_ANGLE:
  1157. .. rst-class:: classref-enumeration-constant
  1158. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SPOT_ANGLE** = ``6``
  1159. The spotlight's angle.
  1160. .. _class_VisualServer_constant_LIGHT_PARAM_SPOT_ATTENUATION:
  1161. .. rst-class:: classref-enumeration-constant
  1162. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SPOT_ATTENUATION** = ``7``
  1163. The spotlight's attenuation.
  1164. .. _class_VisualServer_constant_LIGHT_PARAM_CONTACT_SHADOW_SIZE:
  1165. .. rst-class:: classref-enumeration-constant
  1166. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_CONTACT_SHADOW_SIZE** = ``8``
  1167. Scales the shadow color.
  1168. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_MAX_DISTANCE:
  1169. .. rst-class:: classref-enumeration-constant
  1170. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_MAX_DISTANCE** = ``9``
  1171. Max distance that shadows will be rendered.
  1172. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET:
  1173. .. rst-class:: classref-enumeration-constant
  1174. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_SPLIT_1_OFFSET** = ``10``
  1175. Proportion of shadow atlas occupied by the first split.
  1176. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET:
  1177. .. rst-class:: classref-enumeration-constant
  1178. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_SPLIT_2_OFFSET** = ``11``
  1179. Proportion of shadow atlas occupied by the second split.
  1180. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET:
  1181. .. rst-class:: classref-enumeration-constant
  1182. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_SPLIT_3_OFFSET** = ``12``
  1183. Proportion of shadow atlas occupied by the third split. The fourth split occupies the rest.
  1184. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_NORMAL_BIAS:
  1185. .. rst-class:: classref-enumeration-constant
  1186. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_NORMAL_BIAS** = ``13``
  1187. Normal bias used to offset shadow lookup by object normal. Can be used to fix self-shadowing artifacts.
  1188. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_BIAS:
  1189. .. rst-class:: classref-enumeration-constant
  1190. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_BIAS** = ``14``
  1191. Bias the shadow lookup to fix self-shadowing artifacts.
  1192. .. _class_VisualServer_constant_LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE:
  1193. .. rst-class:: classref-enumeration-constant
  1194. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_SHADOW_BIAS_SPLIT_SCALE** = ``15``
  1195. Increases bias on further splits to fix self-shadowing that only occurs far away from the camera.
  1196. .. _class_VisualServer_constant_LIGHT_PARAM_MAX:
  1197. .. rst-class:: classref-enumeration-constant
  1198. :ref:`LightParam<enum_VisualServer_LightParam>` **LIGHT_PARAM_MAX** = ``16``
  1199. Represents the size of the :ref:`LightParam<enum_VisualServer_LightParam>` enum.
  1200. .. rst-class:: classref-item-separator
  1201. ----
  1202. .. _enum_VisualServer_LightBakeMode:
  1203. .. rst-class:: classref-enumeration
  1204. enum **LightBakeMode**:
  1205. .. _class_VisualServer_constant_LIGHT_BAKE_DISABLED:
  1206. .. rst-class:: classref-enumeration-constant
  1207. :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` **LIGHT_BAKE_DISABLED** = ``0``
  1208. .. _class_VisualServer_constant_LIGHT_BAKE_INDIRECT:
  1209. .. rst-class:: classref-enumeration-constant
  1210. :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` **LIGHT_BAKE_INDIRECT** = ``1``
  1211. .. _class_VisualServer_constant_LIGHT_BAKE_ALL:
  1212. .. rst-class:: classref-enumeration-constant
  1213. :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` **LIGHT_BAKE_ALL** = ``2``
  1214. .. rst-class:: classref-item-separator
  1215. ----
  1216. .. _enum_VisualServer_LightOmniShadowMode:
  1217. .. rst-class:: classref-enumeration
  1218. enum **LightOmniShadowMode**:
  1219. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DUAL_PARABOLOID:
  1220. .. rst-class:: classref-enumeration-constant
  1221. :ref:`LightOmniShadowMode<enum_VisualServer_LightOmniShadowMode>` **LIGHT_OMNI_SHADOW_DUAL_PARABOLOID** = ``0``
  1222. Use a dual paraboloid shadow map for omni lights.
  1223. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_CUBE:
  1224. .. rst-class:: classref-enumeration-constant
  1225. :ref:`LightOmniShadowMode<enum_VisualServer_LightOmniShadowMode>` **LIGHT_OMNI_SHADOW_CUBE** = ``1``
  1226. Use a cubemap shadow map for omni lights. Slower but better quality than dual paraboloid.
  1227. .. rst-class:: classref-item-separator
  1228. ----
  1229. .. _enum_VisualServer_LightOmniShadowDetail:
  1230. .. rst-class:: classref-enumeration
  1231. enum **LightOmniShadowDetail**:
  1232. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DETAIL_VERTICAL:
  1233. .. rst-class:: classref-enumeration-constant
  1234. :ref:`LightOmniShadowDetail<enum_VisualServer_LightOmniShadowDetail>` **LIGHT_OMNI_SHADOW_DETAIL_VERTICAL** = ``0``
  1235. Use more detail vertically when computing shadow map.
  1236. .. _class_VisualServer_constant_LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL:
  1237. .. rst-class:: classref-enumeration-constant
  1238. :ref:`LightOmniShadowDetail<enum_VisualServer_LightOmniShadowDetail>` **LIGHT_OMNI_SHADOW_DETAIL_HORIZONTAL** = ``1``
  1239. Use more detail horizontally when computing shadow map.
  1240. .. rst-class:: classref-item-separator
  1241. ----
  1242. .. _enum_VisualServer_LightDirectionalShadowMode:
  1243. .. rst-class:: classref-enumeration
  1244. enum **LightDirectionalShadowMode**:
  1245. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL:
  1246. .. rst-class:: classref-enumeration-constant
  1247. :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` **LIGHT_DIRECTIONAL_SHADOW_ORTHOGONAL** = ``0``
  1248. Use orthogonal shadow projection for directional light.
  1249. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS:
  1250. .. rst-class:: classref-enumeration-constant
  1251. :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` **LIGHT_DIRECTIONAL_SHADOW_PARALLEL_2_SPLITS** = ``1``
  1252. Use 2 splits for shadow projection when using directional light.
  1253. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS:
  1254. .. rst-class:: classref-enumeration-constant
  1255. :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` **LIGHT_DIRECTIONAL_SHADOW_PARALLEL_4_SPLITS** = ``2``
  1256. Use 4 splits for shadow projection when using directional light.
  1257. .. rst-class:: classref-item-separator
  1258. ----
  1259. .. _enum_VisualServer_LightDirectionalShadowDepthRangeMode:
  1260. .. rst-class:: classref-enumeration
  1261. enum **LightDirectionalShadowDepthRangeMode**:
  1262. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE:
  1263. .. rst-class:: classref-enumeration-constant
  1264. :ref:`LightDirectionalShadowDepthRangeMode<enum_VisualServer_LightDirectionalShadowDepthRangeMode>` **LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_STABLE** = ``0``
  1265. Keeps shadows stable as camera moves but has lower effective resolution.
  1266. .. _class_VisualServer_constant_LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED:
  1267. .. rst-class:: classref-enumeration-constant
  1268. :ref:`LightDirectionalShadowDepthRangeMode<enum_VisualServer_LightDirectionalShadowDepthRangeMode>` **LIGHT_DIRECTIONAL_SHADOW_DEPTH_RANGE_OPTIMIZED** = ``1``
  1269. Optimize use of shadow maps, increasing the effective resolution. But may result in shadows moving or flickering slightly.
  1270. .. rst-class:: classref-item-separator
  1271. ----
  1272. .. _enum_VisualServer_ViewportUpdateMode:
  1273. .. rst-class:: classref-enumeration
  1274. enum **ViewportUpdateMode**:
  1275. .. _class_VisualServer_constant_VIEWPORT_UPDATE_DISABLED:
  1276. .. rst-class:: classref-enumeration-constant
  1277. :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` **VIEWPORT_UPDATE_DISABLED** = ``0``
  1278. Do not update the viewport.
  1279. .. _class_VisualServer_constant_VIEWPORT_UPDATE_ONCE:
  1280. .. rst-class:: classref-enumeration-constant
  1281. :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` **VIEWPORT_UPDATE_ONCE** = ``1``
  1282. Update the viewport once then set to disabled.
  1283. .. _class_VisualServer_constant_VIEWPORT_UPDATE_WHEN_VISIBLE:
  1284. .. rst-class:: classref-enumeration-constant
  1285. :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` **VIEWPORT_UPDATE_WHEN_VISIBLE** = ``2``
  1286. Update the viewport whenever it is visible.
  1287. .. _class_VisualServer_constant_VIEWPORT_UPDATE_ALWAYS:
  1288. .. rst-class:: classref-enumeration-constant
  1289. :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` **VIEWPORT_UPDATE_ALWAYS** = ``3``
  1290. Always update the viewport.
  1291. .. rst-class:: classref-item-separator
  1292. ----
  1293. .. _enum_VisualServer_ViewportClearMode:
  1294. .. rst-class:: classref-enumeration
  1295. enum **ViewportClearMode**:
  1296. .. _class_VisualServer_constant_VIEWPORT_CLEAR_ALWAYS:
  1297. .. rst-class:: classref-enumeration-constant
  1298. :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` **VIEWPORT_CLEAR_ALWAYS** = ``0``
  1299. The viewport is always cleared before drawing.
  1300. .. _class_VisualServer_constant_VIEWPORT_CLEAR_NEVER:
  1301. .. rst-class:: classref-enumeration-constant
  1302. :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` **VIEWPORT_CLEAR_NEVER** = ``1``
  1303. The viewport is never cleared before drawing.
  1304. .. _class_VisualServer_constant_VIEWPORT_CLEAR_ONLY_NEXT_FRAME:
  1305. .. rst-class:: classref-enumeration-constant
  1306. :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` **VIEWPORT_CLEAR_ONLY_NEXT_FRAME** = ``2``
  1307. The viewport is cleared once, then the clear mode is set to :ref:`VIEWPORT_CLEAR_NEVER<class_VisualServer_constant_VIEWPORT_CLEAR_NEVER>`.
  1308. .. rst-class:: classref-item-separator
  1309. ----
  1310. .. _enum_VisualServer_ViewportMSAA:
  1311. .. rst-class:: classref-enumeration
  1312. enum **ViewportMSAA**:
  1313. .. _class_VisualServer_constant_VIEWPORT_MSAA_DISABLED:
  1314. .. rst-class:: classref-enumeration-constant
  1315. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_DISABLED** = ``0``
  1316. Multisample antialiasing is disabled.
  1317. .. _class_VisualServer_constant_VIEWPORT_MSAA_2X:
  1318. .. rst-class:: classref-enumeration-constant
  1319. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_2X** = ``1``
  1320. Multisample antialiasing is set to 2×.
  1321. .. _class_VisualServer_constant_VIEWPORT_MSAA_4X:
  1322. .. rst-class:: classref-enumeration-constant
  1323. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_4X** = ``2``
  1324. Multisample antialiasing is set to 4×.
  1325. .. _class_VisualServer_constant_VIEWPORT_MSAA_8X:
  1326. .. rst-class:: classref-enumeration-constant
  1327. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_8X** = ``3``
  1328. Multisample antialiasing is set to 8×.
  1329. .. _class_VisualServer_constant_VIEWPORT_MSAA_16X:
  1330. .. rst-class:: classref-enumeration-constant
  1331. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_16X** = ``4``
  1332. Multisample antialiasing is set to 16×.
  1333. .. _class_VisualServer_constant_VIEWPORT_MSAA_EXT_2X:
  1334. .. rst-class:: classref-enumeration-constant
  1335. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_EXT_2X** = ``5``
  1336. Multisample antialiasing is set to 2× on external texture. Special mode for GLES2 Android VR (Oculus Quest and Go).
  1337. .. _class_VisualServer_constant_VIEWPORT_MSAA_EXT_4X:
  1338. .. rst-class:: classref-enumeration-constant
  1339. :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` **VIEWPORT_MSAA_EXT_4X** = ``6``
  1340. Multisample antialiasing is set to 4× on external texture. Special mode for GLES2 Android VR (Oculus Quest and Go).
  1341. .. rst-class:: classref-item-separator
  1342. ----
  1343. .. _enum_VisualServer_ViewportUsage:
  1344. .. rst-class:: classref-enumeration
  1345. enum **ViewportUsage**:
  1346. .. _class_VisualServer_constant_VIEWPORT_USAGE_2D:
  1347. .. rst-class:: classref-enumeration-constant
  1348. :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` **VIEWPORT_USAGE_2D** = ``0``
  1349. The Viewport does not render 3D but samples.
  1350. .. _class_VisualServer_constant_VIEWPORT_USAGE_2D_NO_SAMPLING:
  1351. .. rst-class:: classref-enumeration-constant
  1352. :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` **VIEWPORT_USAGE_2D_NO_SAMPLING** = ``1``
  1353. The Viewport does not render 3D and does not sample.
  1354. .. _class_VisualServer_constant_VIEWPORT_USAGE_3D:
  1355. .. rst-class:: classref-enumeration-constant
  1356. :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` **VIEWPORT_USAGE_3D** = ``2``
  1357. The Viewport renders 3D with effects.
  1358. .. _class_VisualServer_constant_VIEWPORT_USAGE_3D_NO_EFFECTS:
  1359. .. rst-class:: classref-enumeration-constant
  1360. :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` **VIEWPORT_USAGE_3D_NO_EFFECTS** = ``3``
  1361. The Viewport renders 3D but without effects.
  1362. .. rst-class:: classref-item-separator
  1363. ----
  1364. .. _enum_VisualServer_ViewportRenderInfo:
  1365. .. rst-class:: classref-enumeration
  1366. enum **ViewportRenderInfo**:
  1367. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME:
  1368. .. rst-class:: classref-enumeration-constant
  1369. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_OBJECTS_IN_FRAME** = ``0``
  1370. Number of objects drawn in a single frame.
  1371. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME:
  1372. .. rst-class:: classref-enumeration-constant
  1373. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_VERTICES_IN_FRAME** = ``1``
  1374. Number of vertices drawn in a single frame.
  1375. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME:
  1376. .. rst-class:: classref-enumeration-constant
  1377. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_MATERIAL_CHANGES_IN_FRAME** = ``2``
  1378. Number of material changes during this frame.
  1379. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME:
  1380. .. rst-class:: classref-enumeration-constant
  1381. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_SHADER_CHANGES_IN_FRAME** = ``3``
  1382. Number of shader changes during this frame.
  1383. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME:
  1384. .. rst-class:: classref-enumeration-constant
  1385. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_SURFACE_CHANGES_IN_FRAME** = ``4``
  1386. Number of surface changes during this frame.
  1387. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME:
  1388. .. rst-class:: classref-enumeration-constant
  1389. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME** = ``5``
  1390. Number of draw calls during this frame.
  1391. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_2D_ITEMS_IN_FRAME:
  1392. .. rst-class:: classref-enumeration-constant
  1393. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_2D_ITEMS_IN_FRAME** = ``6``
  1394. Number of 2d items drawn this frame.
  1395. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_2D_DRAW_CALLS_IN_FRAME:
  1396. .. rst-class:: classref-enumeration-constant
  1397. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_2D_DRAW_CALLS_IN_FRAME** = ``7``
  1398. Number of 2d draw calls during this frame.
  1399. .. _class_VisualServer_constant_VIEWPORT_RENDER_INFO_MAX:
  1400. .. rst-class:: classref-enumeration-constant
  1401. :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` **VIEWPORT_RENDER_INFO_MAX** = ``8``
  1402. Represents the size of the :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` enum.
  1403. .. rst-class:: classref-item-separator
  1404. ----
  1405. .. _enum_VisualServer_ViewportDebugDraw:
  1406. .. rst-class:: classref-enumeration
  1407. enum **ViewportDebugDraw**:
  1408. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_DISABLED:
  1409. .. rst-class:: classref-enumeration-constant
  1410. :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` **VIEWPORT_DEBUG_DRAW_DISABLED** = ``0``
  1411. Debug draw is disabled. Default setting.
  1412. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_UNSHADED:
  1413. .. rst-class:: classref-enumeration-constant
  1414. :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` **VIEWPORT_DEBUG_DRAW_UNSHADED** = ``1``
  1415. Debug draw sets objects to unshaded.
  1416. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_OVERDRAW:
  1417. .. rst-class:: classref-enumeration-constant
  1418. :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` **VIEWPORT_DEBUG_DRAW_OVERDRAW** = ``2``
  1419. Overwrites clear color to ``(0,0,0,0)``.
  1420. .. _class_VisualServer_constant_VIEWPORT_DEBUG_DRAW_WIREFRAME:
  1421. .. rst-class:: classref-enumeration-constant
  1422. :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` **VIEWPORT_DEBUG_DRAW_WIREFRAME** = ``3``
  1423. Debug draw draws objects in wireframe.
  1424. .. rst-class:: classref-item-separator
  1425. ----
  1426. .. _enum_VisualServer_ScenarioDebugMode:
  1427. .. rst-class:: classref-enumeration
  1428. enum **ScenarioDebugMode**:
  1429. .. _class_VisualServer_constant_SCENARIO_DEBUG_DISABLED:
  1430. .. rst-class:: classref-enumeration-constant
  1431. :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` **SCENARIO_DEBUG_DISABLED** = ``0``
  1432. Do not use a debug mode.
  1433. .. _class_VisualServer_constant_SCENARIO_DEBUG_WIREFRAME:
  1434. .. rst-class:: classref-enumeration-constant
  1435. :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` **SCENARIO_DEBUG_WIREFRAME** = ``1``
  1436. Draw all objects as wireframe models.
  1437. .. _class_VisualServer_constant_SCENARIO_DEBUG_OVERDRAW:
  1438. .. rst-class:: classref-enumeration-constant
  1439. :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` **SCENARIO_DEBUG_OVERDRAW** = ``2``
  1440. Draw all objects in a way that displays how much overdraw is occurring. Overdraw occurs when a section of pixels is drawn and shaded and then another object covers it up. To optimize a scene, you should reduce overdraw.
  1441. .. _class_VisualServer_constant_SCENARIO_DEBUG_SHADELESS:
  1442. .. rst-class:: classref-enumeration-constant
  1443. :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` **SCENARIO_DEBUG_SHADELESS** = ``3``
  1444. Draw all objects without shading. Equivalent to setting all objects shaders to ``unshaded``.
  1445. .. rst-class:: classref-item-separator
  1446. ----
  1447. .. _enum_VisualServer_InstanceType:
  1448. .. rst-class:: classref-enumeration
  1449. enum **InstanceType**:
  1450. .. _class_VisualServer_constant_INSTANCE_NONE:
  1451. .. rst-class:: classref-enumeration-constant
  1452. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_NONE** = ``0``
  1453. The instance does not have a type.
  1454. .. _class_VisualServer_constant_INSTANCE_MESH:
  1455. .. rst-class:: classref-enumeration-constant
  1456. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_MESH** = ``1``
  1457. The instance is a mesh.
  1458. .. _class_VisualServer_constant_INSTANCE_MULTIMESH:
  1459. .. rst-class:: classref-enumeration-constant
  1460. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_MULTIMESH** = ``2``
  1461. The instance is a multimesh.
  1462. .. _class_VisualServer_constant_INSTANCE_IMMEDIATE:
  1463. .. rst-class:: classref-enumeration-constant
  1464. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_IMMEDIATE** = ``3``
  1465. The instance is an immediate geometry.
  1466. .. _class_VisualServer_constant_INSTANCE_PARTICLES:
  1467. .. rst-class:: classref-enumeration-constant
  1468. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_PARTICLES** = ``4``
  1469. The instance is a particle emitter.
  1470. .. _class_VisualServer_constant_INSTANCE_LIGHT:
  1471. .. rst-class:: classref-enumeration-constant
  1472. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_LIGHT** = ``5``
  1473. The instance is a light.
  1474. .. _class_VisualServer_constant_INSTANCE_REFLECTION_PROBE:
  1475. .. rst-class:: classref-enumeration-constant
  1476. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_REFLECTION_PROBE** = ``6``
  1477. The instance is a reflection probe.
  1478. .. _class_VisualServer_constant_INSTANCE_GI_PROBE:
  1479. .. rst-class:: classref-enumeration-constant
  1480. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_GI_PROBE** = ``7``
  1481. The instance is a GI probe.
  1482. .. _class_VisualServer_constant_INSTANCE_LIGHTMAP_CAPTURE:
  1483. .. rst-class:: classref-enumeration-constant
  1484. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_LIGHTMAP_CAPTURE** = ``8``
  1485. The instance is a lightmap capture.
  1486. .. _class_VisualServer_constant_INSTANCE_MAX:
  1487. .. rst-class:: classref-enumeration-constant
  1488. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_MAX** = ``9``
  1489. Represents the size of the :ref:`InstanceType<enum_VisualServer_InstanceType>` enum.
  1490. .. _class_VisualServer_constant_INSTANCE_GEOMETRY_MASK:
  1491. .. rst-class:: classref-enumeration-constant
  1492. :ref:`InstanceType<enum_VisualServer_InstanceType>` **INSTANCE_GEOMETRY_MASK** = ``30``
  1493. A combination of the flags of geometry instances (mesh, multimesh, immediate and particles).
  1494. .. rst-class:: classref-item-separator
  1495. ----
  1496. .. _enum_VisualServer_InstanceFlags:
  1497. .. rst-class:: classref-enumeration
  1498. enum **InstanceFlags**:
  1499. .. _class_VisualServer_constant_INSTANCE_FLAG_USE_BAKED_LIGHT:
  1500. .. rst-class:: classref-enumeration-constant
  1501. :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` **INSTANCE_FLAG_USE_BAKED_LIGHT** = ``0``
  1502. Allows the instance to be used in baked lighting.
  1503. .. _class_VisualServer_constant_INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE:
  1504. .. rst-class:: classref-enumeration-constant
  1505. :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` **INSTANCE_FLAG_DRAW_NEXT_FRAME_IF_VISIBLE** = ``1``
  1506. When set, manually requests to draw geometry on next frame.
  1507. .. _class_VisualServer_constant_INSTANCE_FLAG_MAX:
  1508. .. rst-class:: classref-enumeration-constant
  1509. :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` **INSTANCE_FLAG_MAX** = ``2``
  1510. Represents the size of the :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` enum.
  1511. .. rst-class:: classref-item-separator
  1512. ----
  1513. .. _enum_VisualServer_ShadowCastingSetting:
  1514. .. rst-class:: classref-enumeration
  1515. enum **ShadowCastingSetting**:
  1516. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_OFF:
  1517. .. rst-class:: classref-enumeration-constant
  1518. :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` **SHADOW_CASTING_SETTING_OFF** = ``0``
  1519. Disable shadows from this instance.
  1520. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_ON:
  1521. .. rst-class:: classref-enumeration-constant
  1522. :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` **SHADOW_CASTING_SETTING_ON** = ``1``
  1523. Cast shadows from this instance.
  1524. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_DOUBLE_SIDED:
  1525. .. rst-class:: classref-enumeration-constant
  1526. :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` **SHADOW_CASTING_SETTING_DOUBLE_SIDED** = ``2``
  1527. Disable backface culling when rendering the shadow of the object. This is slightly slower but may result in more correct shadows.
  1528. .. _class_VisualServer_constant_SHADOW_CASTING_SETTING_SHADOWS_ONLY:
  1529. .. rst-class:: classref-enumeration-constant
  1530. :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` **SHADOW_CASTING_SETTING_SHADOWS_ONLY** = ``3``
  1531. Only render the shadows from the object. The object itself will not be drawn.
  1532. .. rst-class:: classref-item-separator
  1533. ----
  1534. .. _enum_VisualServer_NinePatchAxisMode:
  1535. .. rst-class:: classref-enumeration
  1536. enum **NinePatchAxisMode**:
  1537. .. _class_VisualServer_constant_NINE_PATCH_STRETCH:
  1538. .. rst-class:: classref-enumeration-constant
  1539. :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` **NINE_PATCH_STRETCH** = ``0``
  1540. The nine patch gets stretched where needed.
  1541. .. _class_VisualServer_constant_NINE_PATCH_TILE:
  1542. .. rst-class:: classref-enumeration-constant
  1543. :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` **NINE_PATCH_TILE** = ``1``
  1544. The nine patch gets filled with tiles where needed.
  1545. .. _class_VisualServer_constant_NINE_PATCH_TILE_FIT:
  1546. .. rst-class:: classref-enumeration-constant
  1547. :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` **NINE_PATCH_TILE_FIT** = ``2``
  1548. The nine patch gets filled with tiles where needed and stretches them a bit if needed.
  1549. .. rst-class:: classref-item-separator
  1550. ----
  1551. .. _enum_VisualServer_CanvasLightMode:
  1552. .. rst-class:: classref-enumeration
  1553. enum **CanvasLightMode**:
  1554. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_ADD:
  1555. .. rst-class:: classref-enumeration-constant
  1556. :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` **CANVAS_LIGHT_MODE_ADD** = ``0``
  1557. Adds light color additive to the canvas.
  1558. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_SUB:
  1559. .. rst-class:: classref-enumeration-constant
  1560. :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` **CANVAS_LIGHT_MODE_SUB** = ``1``
  1561. Adds light color subtractive to the canvas.
  1562. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_MIX:
  1563. .. rst-class:: classref-enumeration-constant
  1564. :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` **CANVAS_LIGHT_MODE_MIX** = ``2``
  1565. The light adds color depending on transparency.
  1566. .. _class_VisualServer_constant_CANVAS_LIGHT_MODE_MASK:
  1567. .. rst-class:: classref-enumeration-constant
  1568. :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` **CANVAS_LIGHT_MODE_MASK** = ``3``
  1569. The light adds color depending on mask.
  1570. .. rst-class:: classref-item-separator
  1571. ----
  1572. .. _enum_VisualServer_CanvasLightShadowFilter:
  1573. .. rst-class:: classref-enumeration
  1574. enum **CanvasLightShadowFilter**:
  1575. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_NONE:
  1576. .. rst-class:: classref-enumeration-constant
  1577. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_NONE** = ``0``
  1578. Do not apply a filter to canvas light shadows.
  1579. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF3:
  1580. .. rst-class:: classref-enumeration-constant
  1581. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_PCF3** = ``1``
  1582. Use PCF3 filtering to filter canvas light shadows.
  1583. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF5:
  1584. .. rst-class:: classref-enumeration-constant
  1585. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_PCF5** = ``2``
  1586. Use PCF5 filtering to filter canvas light shadows.
  1587. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF7:
  1588. .. rst-class:: classref-enumeration-constant
  1589. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_PCF7** = ``3``
  1590. Use PCF7 filtering to filter canvas light shadows.
  1591. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF9:
  1592. .. rst-class:: classref-enumeration-constant
  1593. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_PCF9** = ``4``
  1594. Use PCF9 filtering to filter canvas light shadows.
  1595. .. _class_VisualServer_constant_CANVAS_LIGHT_FILTER_PCF13:
  1596. .. rst-class:: classref-enumeration-constant
  1597. :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` **CANVAS_LIGHT_FILTER_PCF13** = ``5``
  1598. Use PCF13 filtering to filter canvas light shadows.
  1599. .. rst-class:: classref-item-separator
  1600. ----
  1601. .. _enum_VisualServer_CanvasOccluderPolygonCullMode:
  1602. .. rst-class:: classref-enumeration
  1603. enum **CanvasOccluderPolygonCullMode**:
  1604. .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_DISABLED:
  1605. .. rst-class:: classref-enumeration-constant
  1606. :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` **CANVAS_OCCLUDER_POLYGON_CULL_DISABLED** = ``0``
  1607. Culling of the canvas occluder is disabled.
  1608. .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE:
  1609. .. rst-class:: classref-enumeration-constant
  1610. :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` **CANVAS_OCCLUDER_POLYGON_CULL_CLOCKWISE** = ``1``
  1611. Culling of the canvas occluder is clockwise.
  1612. .. _class_VisualServer_constant_CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE:
  1613. .. rst-class:: classref-enumeration-constant
  1614. :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` **CANVAS_OCCLUDER_POLYGON_CULL_COUNTER_CLOCKWISE** = ``2``
  1615. Culling of the canvas occluder is counterclockwise.
  1616. .. rst-class:: classref-item-separator
  1617. ----
  1618. .. _enum_VisualServer_RenderInfo:
  1619. .. rst-class:: classref-enumeration
  1620. enum **RenderInfo**:
  1621. .. _class_VisualServer_constant_INFO_OBJECTS_IN_FRAME:
  1622. .. rst-class:: classref-enumeration-constant
  1623. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_OBJECTS_IN_FRAME** = ``0``
  1624. The amount of objects in the frame.
  1625. .. _class_VisualServer_constant_INFO_VERTICES_IN_FRAME:
  1626. .. rst-class:: classref-enumeration-constant
  1627. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_VERTICES_IN_FRAME** = ``1``
  1628. The amount of vertices in the frame.
  1629. .. _class_VisualServer_constant_INFO_MATERIAL_CHANGES_IN_FRAME:
  1630. .. rst-class:: classref-enumeration-constant
  1631. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_MATERIAL_CHANGES_IN_FRAME** = ``2``
  1632. The amount of modified materials in the frame.
  1633. .. _class_VisualServer_constant_INFO_SHADER_CHANGES_IN_FRAME:
  1634. .. rst-class:: classref-enumeration-constant
  1635. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_SHADER_CHANGES_IN_FRAME** = ``3``
  1636. The amount of shader rebinds in the frame.
  1637. .. _class_VisualServer_constant_INFO_SHADER_COMPILES_IN_FRAME:
  1638. .. rst-class:: classref-enumeration-constant
  1639. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_SHADER_COMPILES_IN_FRAME** = ``4``
  1640. The peak amount of shaders that have been under compilation in the frame.
  1641. This is useful to know when asynchronous shader compilation has finished for the current shaders on screen.
  1642. \ **Note:** For complete certainty, only assume there are no outstanding compilations when this value is zero for at least two frames in a row.
  1643. Unimplemented in the GLES2 rendering backend, always returns 0.
  1644. .. _class_VisualServer_constant_INFO_SURFACE_CHANGES_IN_FRAME:
  1645. .. rst-class:: classref-enumeration-constant
  1646. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_SURFACE_CHANGES_IN_FRAME** = ``5``
  1647. The amount of surface changes in the frame.
  1648. .. _class_VisualServer_constant_INFO_DRAW_CALLS_IN_FRAME:
  1649. .. rst-class:: classref-enumeration-constant
  1650. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_DRAW_CALLS_IN_FRAME** = ``6``
  1651. The amount of draw calls in frame.
  1652. .. _class_VisualServer_constant_INFO_2D_ITEMS_IN_FRAME:
  1653. .. rst-class:: classref-enumeration-constant
  1654. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_2D_ITEMS_IN_FRAME** = ``7``
  1655. The amount of 2d items in the frame.
  1656. .. _class_VisualServer_constant_INFO_2D_DRAW_CALLS_IN_FRAME:
  1657. .. rst-class:: classref-enumeration-constant
  1658. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_2D_DRAW_CALLS_IN_FRAME** = ``8``
  1659. The amount of 2d draw calls in frame.
  1660. .. _class_VisualServer_constant_INFO_USAGE_VIDEO_MEM_TOTAL:
  1661. .. rst-class:: classref-enumeration-constant
  1662. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_USAGE_VIDEO_MEM_TOTAL** = ``9``
  1663. Unimplemented in the GLES2 and GLES3 rendering backends, always returns 0.
  1664. .. _class_VisualServer_constant_INFO_VIDEO_MEM_USED:
  1665. .. rst-class:: classref-enumeration-constant
  1666. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_VIDEO_MEM_USED** = ``10``
  1667. The amount of video memory used, i.e. texture and vertex memory combined.
  1668. .. _class_VisualServer_constant_INFO_TEXTURE_MEM_USED:
  1669. .. rst-class:: classref-enumeration-constant
  1670. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_TEXTURE_MEM_USED** = ``11``
  1671. The amount of texture memory used.
  1672. .. _class_VisualServer_constant_INFO_VERTEX_MEM_USED:
  1673. .. rst-class:: classref-enumeration-constant
  1674. :ref:`RenderInfo<enum_VisualServer_RenderInfo>` **INFO_VERTEX_MEM_USED** = ``12``
  1675. The amount of vertex memory used.
  1676. .. rst-class:: classref-item-separator
  1677. ----
  1678. .. _enum_VisualServer_Features:
  1679. .. rst-class:: classref-enumeration
  1680. enum **Features**:
  1681. .. _class_VisualServer_constant_FEATURE_SHADERS:
  1682. .. rst-class:: classref-enumeration-constant
  1683. :ref:`Features<enum_VisualServer_Features>` **FEATURE_SHADERS** = ``0``
  1684. Hardware supports shaders. This enum is currently unused in Godot 3.x.
  1685. .. _class_VisualServer_constant_FEATURE_MULTITHREADED:
  1686. .. rst-class:: classref-enumeration-constant
  1687. :ref:`Features<enum_VisualServer_Features>` **FEATURE_MULTITHREADED** = ``1``
  1688. Hardware supports multithreading. This enum is currently unused in Godot 3.x.
  1689. .. rst-class:: classref-item-separator
  1690. ----
  1691. .. _enum_VisualServer_MultimeshTransformFormat:
  1692. .. rst-class:: classref-enumeration
  1693. enum **MultimeshTransformFormat**:
  1694. .. _class_VisualServer_constant_MULTIMESH_TRANSFORM_2D:
  1695. .. rst-class:: classref-enumeration-constant
  1696. :ref:`MultimeshTransformFormat<enum_VisualServer_MultimeshTransformFormat>` **MULTIMESH_TRANSFORM_2D** = ``0``
  1697. Use :ref:`Transform2D<class_Transform2D>` to store MultiMesh transform.
  1698. .. _class_VisualServer_constant_MULTIMESH_TRANSFORM_3D:
  1699. .. rst-class:: classref-enumeration-constant
  1700. :ref:`MultimeshTransformFormat<enum_VisualServer_MultimeshTransformFormat>` **MULTIMESH_TRANSFORM_3D** = ``1``
  1701. Use :ref:`Transform<class_Transform>` to store MultiMesh transform.
  1702. .. rst-class:: classref-item-separator
  1703. ----
  1704. .. _enum_VisualServer_MultimeshColorFormat:
  1705. .. rst-class:: classref-enumeration
  1706. enum **MultimeshColorFormat**:
  1707. .. _class_VisualServer_constant_MULTIMESH_COLOR_NONE:
  1708. .. rst-class:: classref-enumeration-constant
  1709. :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>` **MULTIMESH_COLOR_NONE** = ``0``
  1710. MultiMesh does not use per-instance color.
  1711. .. _class_VisualServer_constant_MULTIMESH_COLOR_8BIT:
  1712. .. rst-class:: classref-enumeration-constant
  1713. :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>` **MULTIMESH_COLOR_8BIT** = ``1``
  1714. MultiMesh color uses 8 bits per component. This packs the color into a single float.
  1715. .. _class_VisualServer_constant_MULTIMESH_COLOR_FLOAT:
  1716. .. rst-class:: classref-enumeration-constant
  1717. :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>` **MULTIMESH_COLOR_FLOAT** = ``2``
  1718. MultiMesh color uses a float per channel.
  1719. .. rst-class:: classref-item-separator
  1720. ----
  1721. .. _enum_VisualServer_MultimeshCustomDataFormat:
  1722. .. rst-class:: classref-enumeration
  1723. enum **MultimeshCustomDataFormat**:
  1724. .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_NONE:
  1725. .. rst-class:: classref-enumeration-constant
  1726. :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` **MULTIMESH_CUSTOM_DATA_NONE** = ``0``
  1727. MultiMesh does not use custom data.
  1728. .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_8BIT:
  1729. .. rst-class:: classref-enumeration-constant
  1730. :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` **MULTIMESH_CUSTOM_DATA_8BIT** = ``1``
  1731. MultiMesh custom data uses 8 bits per component. This packs the 4-component custom data into a single float.
  1732. .. _class_VisualServer_constant_MULTIMESH_CUSTOM_DATA_FLOAT:
  1733. .. rst-class:: classref-enumeration-constant
  1734. :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` **MULTIMESH_CUSTOM_DATA_FLOAT** = ``2``
  1735. MultiMesh custom data uses a float per component.
  1736. .. rst-class:: classref-item-separator
  1737. ----
  1738. .. _enum_VisualServer_ReflectionProbeUpdateMode:
  1739. .. rst-class:: classref-enumeration
  1740. enum **ReflectionProbeUpdateMode**:
  1741. .. _class_VisualServer_constant_REFLECTION_PROBE_UPDATE_ONCE:
  1742. .. rst-class:: classref-enumeration-constant
  1743. :ref:`ReflectionProbeUpdateMode<enum_VisualServer_ReflectionProbeUpdateMode>` **REFLECTION_PROBE_UPDATE_ONCE** = ``0``
  1744. Reflection probe will update reflections once and then stop.
  1745. .. _class_VisualServer_constant_REFLECTION_PROBE_UPDATE_ALWAYS:
  1746. .. rst-class:: classref-enumeration-constant
  1747. :ref:`ReflectionProbeUpdateMode<enum_VisualServer_ReflectionProbeUpdateMode>` **REFLECTION_PROBE_UPDATE_ALWAYS** = ``1``
  1748. Reflection probe will update each frame. This mode is necessary to capture moving objects.
  1749. .. rst-class:: classref-item-separator
  1750. ----
  1751. .. _enum_VisualServer_ParticlesDrawOrder:
  1752. .. rst-class:: classref-enumeration
  1753. enum **ParticlesDrawOrder**:
  1754. .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_INDEX:
  1755. .. rst-class:: classref-enumeration-constant
  1756. :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` **PARTICLES_DRAW_ORDER_INDEX** = ``0``
  1757. Draw particles in the order that they appear in the particles array.
  1758. .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_LIFETIME:
  1759. .. rst-class:: classref-enumeration-constant
  1760. :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` **PARTICLES_DRAW_ORDER_LIFETIME** = ``1``
  1761. Sort particles based on their lifetime.
  1762. .. _class_VisualServer_constant_PARTICLES_DRAW_ORDER_VIEW_DEPTH:
  1763. .. rst-class:: classref-enumeration-constant
  1764. :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` **PARTICLES_DRAW_ORDER_VIEW_DEPTH** = ``2``
  1765. Sort particles based on their distance to the camera.
  1766. .. rst-class:: classref-item-separator
  1767. ----
  1768. .. _enum_VisualServer_EnvironmentBG:
  1769. .. rst-class:: classref-enumeration
  1770. enum **EnvironmentBG**:
  1771. .. _class_VisualServer_constant_ENV_BG_CLEAR_COLOR:
  1772. .. rst-class:: classref-enumeration-constant
  1773. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_CLEAR_COLOR** = ``0``
  1774. Use the clear color as background.
  1775. .. _class_VisualServer_constant_ENV_BG_COLOR:
  1776. .. rst-class:: classref-enumeration-constant
  1777. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_COLOR** = ``1``
  1778. Use a specified color as the background.
  1779. .. _class_VisualServer_constant_ENV_BG_SKY:
  1780. .. rst-class:: classref-enumeration-constant
  1781. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_SKY** = ``2``
  1782. Use a sky resource for the background.
  1783. .. _class_VisualServer_constant_ENV_BG_COLOR_SKY:
  1784. .. rst-class:: classref-enumeration-constant
  1785. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_COLOR_SKY** = ``3``
  1786. Use a custom color for background, but use a sky for shading and reflections.
  1787. .. _class_VisualServer_constant_ENV_BG_CANVAS:
  1788. .. rst-class:: classref-enumeration-constant
  1789. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_CANVAS** = ``4``
  1790. Use a specified canvas layer as the background. This can be useful for instantiating a 2D scene in a 3D world.
  1791. .. _class_VisualServer_constant_ENV_BG_KEEP:
  1792. .. rst-class:: classref-enumeration-constant
  1793. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_KEEP** = ``5``
  1794. Do not clear the background, use whatever was rendered last frame as the background.
  1795. .. _class_VisualServer_constant_ENV_BG_MAX:
  1796. .. rst-class:: classref-enumeration-constant
  1797. :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` **ENV_BG_MAX** = ``7``
  1798. Represents the size of the :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` enum.
  1799. .. rst-class:: classref-item-separator
  1800. ----
  1801. .. _enum_VisualServer_EnvironmentDOFBlurQuality:
  1802. .. rst-class:: classref-enumeration
  1803. enum **EnvironmentDOFBlurQuality**:
  1804. .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_LOW:
  1805. .. rst-class:: classref-enumeration-constant
  1806. :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` **ENV_DOF_BLUR_QUALITY_LOW** = ``0``
  1807. Use lowest blur quality. Fastest, but may look bad.
  1808. .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_MEDIUM:
  1809. .. rst-class:: classref-enumeration-constant
  1810. :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` **ENV_DOF_BLUR_QUALITY_MEDIUM** = ``1``
  1811. Use medium blur quality.
  1812. .. _class_VisualServer_constant_ENV_DOF_BLUR_QUALITY_HIGH:
  1813. .. rst-class:: classref-enumeration-constant
  1814. :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` **ENV_DOF_BLUR_QUALITY_HIGH** = ``2``
  1815. Used highest blur quality. Looks the best, but is the slowest.
  1816. .. rst-class:: classref-item-separator
  1817. ----
  1818. .. _enum_VisualServer_EnvironmentGlowBlendMode:
  1819. .. rst-class:: classref-enumeration
  1820. enum **EnvironmentGlowBlendMode**:
  1821. .. _class_VisualServer_constant_GLOW_BLEND_MODE_ADDITIVE:
  1822. .. rst-class:: classref-enumeration-constant
  1823. :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` **GLOW_BLEND_MODE_ADDITIVE** = ``0``
  1824. Add the effect of the glow on top of the scene.
  1825. .. _class_VisualServer_constant_GLOW_BLEND_MODE_SCREEN:
  1826. .. rst-class:: classref-enumeration-constant
  1827. :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` **GLOW_BLEND_MODE_SCREEN** = ``1``
  1828. Blends the glow effect with the screen. Does not get as bright as additive.
  1829. .. _class_VisualServer_constant_GLOW_BLEND_MODE_SOFTLIGHT:
  1830. .. rst-class:: classref-enumeration-constant
  1831. :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` **GLOW_BLEND_MODE_SOFTLIGHT** = ``2``
  1832. Produces a subtle color disturbance around objects.
  1833. .. _class_VisualServer_constant_GLOW_BLEND_MODE_REPLACE:
  1834. .. rst-class:: classref-enumeration-constant
  1835. :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` **GLOW_BLEND_MODE_REPLACE** = ``3``
  1836. Shows the glow effect by itself without the underlying scene.
  1837. .. rst-class:: classref-item-separator
  1838. ----
  1839. .. _enum_VisualServer_EnvironmentToneMapper:
  1840. .. rst-class:: classref-enumeration
  1841. enum **EnvironmentToneMapper**:
  1842. .. _class_VisualServer_constant_ENV_TONE_MAPPER_LINEAR:
  1843. .. rst-class:: classref-enumeration-constant
  1844. :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` **ENV_TONE_MAPPER_LINEAR** = ``0``
  1845. Output color as they came in. This can cause bright lighting to look blown out, with noticeable clipping in the output colors.
  1846. .. _class_VisualServer_constant_ENV_TONE_MAPPER_REINHARD:
  1847. .. rst-class:: classref-enumeration-constant
  1848. :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` **ENV_TONE_MAPPER_REINHARD** = ``1``
  1849. Use the Reinhard tonemapper. Performs a variation on rendered pixels' colors by this formula: ``color = color / (1 + color)``. This avoids clipping bright highlights, but the resulting image can look a bit dull.
  1850. .. _class_VisualServer_constant_ENV_TONE_MAPPER_FILMIC:
  1851. .. rst-class:: classref-enumeration-constant
  1852. :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` **ENV_TONE_MAPPER_FILMIC** = ``2``
  1853. Use the filmic tonemapper. This avoids clipping bright highlights, with a resulting image that usually looks more vivid than :ref:`ENV_TONE_MAPPER_REINHARD<class_VisualServer_constant_ENV_TONE_MAPPER_REINHARD>`.
  1854. .. _class_VisualServer_constant_ENV_TONE_MAPPER_ACES:
  1855. .. rst-class:: classref-enumeration-constant
  1856. :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` **ENV_TONE_MAPPER_ACES** = ``3``
  1857. Use the legacy Godot version of the Academy Color Encoding System tonemapper. Unlike :ref:`ENV_TONE_MAPPER_ACES_FITTED<class_VisualServer_constant_ENV_TONE_MAPPER_ACES_FITTED>`, this version of ACES does not handle bright lighting in a physically accurate way. ACES typically has a more contrasted output compared to :ref:`ENV_TONE_MAPPER_REINHARD<class_VisualServer_constant_ENV_TONE_MAPPER_REINHARD>` and :ref:`ENV_TONE_MAPPER_FILMIC<class_VisualServer_constant_ENV_TONE_MAPPER_FILMIC>`.
  1858. \ **Note:** This tonemapping operator will be removed in Godot 4.0 in favor of the more accurate :ref:`ENV_TONE_MAPPER_ACES_FITTED<class_VisualServer_constant_ENV_TONE_MAPPER_ACES_FITTED>`.
  1859. .. _class_VisualServer_constant_ENV_TONE_MAPPER_ACES_FITTED:
  1860. .. rst-class:: classref-enumeration-constant
  1861. :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` **ENV_TONE_MAPPER_ACES_FITTED** = ``4``
  1862. Use the Academy Color Encoding System tonemapper. ACES is slightly more expensive than other options, but it handles bright lighting in a more realistic fashion by desaturating it as it becomes brighter. ACES typically has a more contrasted output compared to :ref:`ENV_TONE_MAPPER_REINHARD<class_VisualServer_constant_ENV_TONE_MAPPER_REINHARD>` and :ref:`ENV_TONE_MAPPER_FILMIC<class_VisualServer_constant_ENV_TONE_MAPPER_FILMIC>`.
  1863. .. rst-class:: classref-item-separator
  1864. ----
  1865. .. _enum_VisualServer_EnvironmentSSAOQuality:
  1866. .. rst-class:: classref-enumeration
  1867. enum **EnvironmentSSAOQuality**:
  1868. .. _class_VisualServer_constant_ENV_SSAO_QUALITY_LOW:
  1869. .. rst-class:: classref-enumeration-constant
  1870. :ref:`EnvironmentSSAOQuality<enum_VisualServer_EnvironmentSSAOQuality>` **ENV_SSAO_QUALITY_LOW** = ``0``
  1871. Lowest quality of screen space ambient occlusion.
  1872. .. _class_VisualServer_constant_ENV_SSAO_QUALITY_MEDIUM:
  1873. .. rst-class:: classref-enumeration-constant
  1874. :ref:`EnvironmentSSAOQuality<enum_VisualServer_EnvironmentSSAOQuality>` **ENV_SSAO_QUALITY_MEDIUM** = ``1``
  1875. Medium quality screen space ambient occlusion.
  1876. .. _class_VisualServer_constant_ENV_SSAO_QUALITY_HIGH:
  1877. .. rst-class:: classref-enumeration-constant
  1878. :ref:`EnvironmentSSAOQuality<enum_VisualServer_EnvironmentSSAOQuality>` **ENV_SSAO_QUALITY_HIGH** = ``2``
  1879. Highest quality screen space ambient occlusion.
  1880. .. rst-class:: classref-item-separator
  1881. ----
  1882. .. _enum_VisualServer_EnvironmentSSAOBlur:
  1883. .. rst-class:: classref-enumeration
  1884. enum **EnvironmentSSAOBlur**:
  1885. .. _class_VisualServer_constant_ENV_SSAO_BLUR_DISABLED:
  1886. .. rst-class:: classref-enumeration-constant
  1887. :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` **ENV_SSAO_BLUR_DISABLED** = ``0``
  1888. Disables the blur set for SSAO. Will make SSAO look noisier.
  1889. .. _class_VisualServer_constant_ENV_SSAO_BLUR_1x1:
  1890. .. rst-class:: classref-enumeration-constant
  1891. :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` **ENV_SSAO_BLUR_1x1** = ``1``
  1892. Perform a 1x1 blur on the SSAO output.
  1893. .. _class_VisualServer_constant_ENV_SSAO_BLUR_2x2:
  1894. .. rst-class:: classref-enumeration-constant
  1895. :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` **ENV_SSAO_BLUR_2x2** = ``2``
  1896. Performs a 2x2 blur on the SSAO output.
  1897. .. _class_VisualServer_constant_ENV_SSAO_BLUR_3x3:
  1898. .. rst-class:: classref-enumeration-constant
  1899. :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` **ENV_SSAO_BLUR_3x3** = ``3``
  1900. Performs a 3x3 blur on the SSAO output. Use this for smoothest SSAO.
  1901. .. rst-class:: classref-item-separator
  1902. ----
  1903. .. _enum_VisualServer_ChangedPriority:
  1904. .. rst-class:: classref-enumeration
  1905. enum **ChangedPriority**:
  1906. .. _class_VisualServer_constant_CHANGED_PRIORITY_ANY:
  1907. .. rst-class:: classref-enumeration-constant
  1908. :ref:`ChangedPriority<enum_VisualServer_ChangedPriority>` **CHANGED_PRIORITY_ANY** = ``0``
  1909. Used to query for any changes that request a redraw, whatever the priority.
  1910. .. _class_VisualServer_constant_CHANGED_PRIORITY_LOW:
  1911. .. rst-class:: classref-enumeration-constant
  1912. :ref:`ChangedPriority<enum_VisualServer_ChangedPriority>` **CHANGED_PRIORITY_LOW** = ``1``
  1913. Registered changes which have low priority can be optionally prevented from causing editor redraws. Examples might include dynamic shaders (typically using the ``TIME`` built-in).
  1914. .. _class_VisualServer_constant_CHANGED_PRIORITY_HIGH:
  1915. .. rst-class:: classref-enumeration-constant
  1916. :ref:`ChangedPriority<enum_VisualServer_ChangedPriority>` **CHANGED_PRIORITY_HIGH** = ``2``
  1917. Registered changes which can cause a redraw default to high priority.
  1918. .. rst-class:: classref-section-separator
  1919. ----
  1920. .. rst-class:: classref-descriptions-group
  1921. Constants
  1922. ---------
  1923. .. _class_VisualServer_constant_NO_INDEX_ARRAY:
  1924. .. rst-class:: classref-constant
  1925. **NO_INDEX_ARRAY** = ``-1``
  1926. Marks an error that shows that the index array is empty.
  1927. .. _class_VisualServer_constant_ARRAY_WEIGHTS_SIZE:
  1928. .. rst-class:: classref-constant
  1929. **ARRAY_WEIGHTS_SIZE** = ``4``
  1930. Number of weights/bones per vertex.
  1931. .. _class_VisualServer_constant_CANVAS_ITEM_Z_MIN:
  1932. .. rst-class:: classref-constant
  1933. **CANVAS_ITEM_Z_MIN** = ``-4096``
  1934. The minimum Z-layer for canvas items.
  1935. .. _class_VisualServer_constant_CANVAS_ITEM_Z_MAX:
  1936. .. rst-class:: classref-constant
  1937. **CANVAS_ITEM_Z_MAX** = ``4096``
  1938. The maximum Z-layer for canvas items.
  1939. .. _class_VisualServer_constant_MAX_GLOW_LEVELS:
  1940. .. rst-class:: classref-constant
  1941. **MAX_GLOW_LEVELS** = ``7``
  1942. Max number of glow levels that can be used with glow post-process effect.
  1943. .. _class_VisualServer_constant_MAX_CURSORS:
  1944. .. rst-class:: classref-constant
  1945. **MAX_CURSORS** = ``8``
  1946. Unused enum in Godot 3.x.
  1947. .. _class_VisualServer_constant_MATERIAL_RENDER_PRIORITY_MIN:
  1948. .. rst-class:: classref-constant
  1949. **MATERIAL_RENDER_PRIORITY_MIN** = ``-128``
  1950. The minimum renderpriority of all materials.
  1951. .. _class_VisualServer_constant_MATERIAL_RENDER_PRIORITY_MAX:
  1952. .. rst-class:: classref-constant
  1953. **MATERIAL_RENDER_PRIORITY_MAX** = ``127``
  1954. The maximum renderpriority of all materials.
  1955. .. rst-class:: classref-section-separator
  1956. ----
  1957. .. rst-class:: classref-descriptions-group
  1958. Property Descriptions
  1959. ---------------------
  1960. .. _class_VisualServer_property_render_loop_enabled:
  1961. .. rst-class:: classref-property
  1962. :ref:`bool<class_bool>` **render_loop_enabled**
  1963. .. rst-class:: classref-property-setget
  1964. - void **set_render_loop_enabled** **(** :ref:`bool<class_bool>` value **)**
  1965. - :ref:`bool<class_bool>` **is_render_loop_enabled** **(** **)**
  1966. If ``false``, disables rendering completely, but the engine logic is still being processed. You can call :ref:`force_draw<class_VisualServer_method_force_draw>` to draw a frame even with rendering disabled.
  1967. .. rst-class:: classref-section-separator
  1968. ----
  1969. .. rst-class:: classref-descriptions-group
  1970. Method Descriptions
  1971. -------------------
  1972. .. _class_VisualServer_method_black_bars_set_images:
  1973. .. rst-class:: classref-method
  1974. void **black_bars_set_images** **(** :ref:`RID<class_RID>` left, :ref:`RID<class_RID>` top, :ref:`RID<class_RID>` right, :ref:`RID<class_RID>` bottom **)**
  1975. Sets images to be rendered in the window margin.
  1976. .. rst-class:: classref-item-separator
  1977. ----
  1978. .. _class_VisualServer_method_black_bars_set_margins:
  1979. .. rst-class:: classref-method
  1980. void **black_bars_set_margins** **(** :ref:`int<class_int>` left, :ref:`int<class_int>` top, :ref:`int<class_int>` right, :ref:`int<class_int>` bottom **)**
  1981. Sets margin size, where black bars (or images, if :ref:`black_bars_set_images<class_VisualServer_method_black_bars_set_images>` was used) are rendered.
  1982. .. rst-class:: classref-item-separator
  1983. ----
  1984. .. _class_VisualServer_method_camera_create:
  1985. .. rst-class:: classref-method
  1986. :ref:`RID<class_RID>` **camera_create** **(** **)**
  1987. Creates a camera and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``camera_*`` VisualServer functions.
  1988. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  1989. .. rst-class:: classref-item-separator
  1990. ----
  1991. .. _class_VisualServer_method_camera_set_cull_mask:
  1992. .. rst-class:: classref-method
  1993. void **camera_set_cull_mask** **(** :ref:`RID<class_RID>` camera, :ref:`int<class_int>` layers **)**
  1994. Sets the cull mask associated with this camera. The cull mask describes which 3D layers are rendered by this camera. Equivalent to :ref:`Camera.cull_mask<class_Camera_property_cull_mask>`.
  1995. .. rst-class:: classref-item-separator
  1996. ----
  1997. .. _class_VisualServer_method_camera_set_environment:
  1998. .. rst-class:: classref-method
  1999. void **camera_set_environment** **(** :ref:`RID<class_RID>` camera, :ref:`RID<class_RID>` env **)**
  2000. Sets the environment used by this camera. Equivalent to :ref:`Camera.environment<class_Camera_property_environment>`.
  2001. .. rst-class:: classref-item-separator
  2002. ----
  2003. .. _class_VisualServer_method_camera_set_frustum:
  2004. .. rst-class:: classref-method
  2005. void **camera_set_frustum** **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` size, :ref:`Vector2<class_Vector2>` offset, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)**
  2006. Sets camera to use frustum projection. This mode allows adjusting the ``offset`` argument to create "tilted frustum" effects.
  2007. .. rst-class:: classref-item-separator
  2008. ----
  2009. .. _class_VisualServer_method_camera_set_orthogonal:
  2010. .. rst-class:: classref-method
  2011. void **camera_set_orthogonal** **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` size, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)**
  2012. Sets camera to use orthogonal projection, also known as orthographic projection. Objects remain the same size on the screen no matter how far away they are.
  2013. .. rst-class:: classref-item-separator
  2014. ----
  2015. .. _class_VisualServer_method_camera_set_perspective:
  2016. .. rst-class:: classref-method
  2017. void **camera_set_perspective** **(** :ref:`RID<class_RID>` camera, :ref:`float<class_float>` fovy_degrees, :ref:`float<class_float>` z_near, :ref:`float<class_float>` z_far **)**
  2018. Sets camera to use perspective projection. Objects on the screen becomes smaller when they are far away.
  2019. .. rst-class:: classref-item-separator
  2020. ----
  2021. .. _class_VisualServer_method_camera_set_transform:
  2022. .. rst-class:: classref-method
  2023. void **camera_set_transform** **(** :ref:`RID<class_RID>` camera, :ref:`Transform<class_Transform>` transform **)**
  2024. Sets :ref:`Transform<class_Transform>` of camera.
  2025. .. rst-class:: classref-item-separator
  2026. ----
  2027. .. _class_VisualServer_method_camera_set_use_vertical_aspect:
  2028. .. rst-class:: classref-method
  2029. void **camera_set_use_vertical_aspect** **(** :ref:`RID<class_RID>` camera, :ref:`bool<class_bool>` enable **)**
  2030. If ``true``, preserves the horizontal aspect ratio which is equivalent to :ref:`Camera.KEEP_WIDTH<class_Camera_constant_KEEP_WIDTH>`. If ``false``, preserves the vertical aspect ratio which is equivalent to :ref:`Camera.KEEP_HEIGHT<class_Camera_constant_KEEP_HEIGHT>`.
  2031. .. rst-class:: classref-item-separator
  2032. ----
  2033. .. _class_VisualServer_method_canvas_create:
  2034. .. rst-class:: classref-method
  2035. :ref:`RID<class_RID>` **canvas_create** **(** **)**
  2036. Creates a canvas and returns the assigned :ref:`RID<class_RID>`. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_*`` VisualServer functions.
  2037. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2038. .. rst-class:: classref-item-separator
  2039. ----
  2040. .. _class_VisualServer_method_canvas_item_add_circle:
  2041. .. rst-class:: classref-method
  2042. void **canvas_item_add_circle** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` pos, :ref:`float<class_float>` radius, :ref:`Color<class_Color>` color **)**
  2043. Adds a circle command to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2044. .. rst-class:: classref-item-separator
  2045. ----
  2046. .. _class_VisualServer_method_canvas_item_add_clip_ignore:
  2047. .. rst-class:: classref-method
  2048. void **canvas_item_add_clip_ignore** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` ignore **)**
  2049. If ignore is ``true``, the VisualServer does not perform clipping.
  2050. .. rst-class:: classref-item-separator
  2051. ----
  2052. .. _class_VisualServer_method_canvas_item_add_line:
  2053. .. rst-class:: classref-method
  2054. void **canvas_item_add_line** **(** :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` from, :ref:`Vector2<class_Vector2>` to, :ref:`Color<class_Color>` color, :ref:`float<class_float>` width=1.0, :ref:`bool<class_bool>` antialiased=false **)**
  2055. Adds a line command to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2056. .. rst-class:: classref-item-separator
  2057. ----
  2058. .. _class_VisualServer_method_canvas_item_add_mesh:
  2059. .. rst-class:: classref-method
  2060. void **canvas_item_add_mesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`Transform2D<class_Transform2D>` transform=Transform2D( 1, 0, 0, 1, 0, 0 ), :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)**
  2061. Adds a mesh command to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2062. .. rst-class:: classref-item-separator
  2063. ----
  2064. .. _class_VisualServer_method_canvas_item_add_multimesh:
  2065. .. rst-class:: classref-method
  2066. void **canvas_item_add_multimesh** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` mesh, :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)**
  2067. Adds a :ref:`MultiMesh<class_MultiMesh>` to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands. Only affects its aabb at the moment.
  2068. .. rst-class:: classref-item-separator
  2069. ----
  2070. .. _class_VisualServer_method_canvas_item_add_nine_patch:
  2071. .. rst-class:: classref-method
  2072. void **canvas_item_add_nine_patch** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Rect2<class_Rect2>` source, :ref:`RID<class_RID>` texture, :ref:`Vector2<class_Vector2>` topleft, :ref:`Vector2<class_Vector2>` bottomright, :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` x_axis_mode=0, :ref:`NinePatchAxisMode<enum_VisualServer_NinePatchAxisMode>` y_axis_mode=0, :ref:`bool<class_bool>` draw_center=true, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`RID<class_RID>` normal_map **)**
  2073. Adds a nine patch image to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2074. See :ref:`NinePatchRect<class_NinePatchRect>` for more explanation.
  2075. .. rst-class:: classref-item-separator
  2076. ----
  2077. .. _class_VisualServer_method_canvas_item_add_particles:
  2078. .. rst-class:: classref-method
  2079. void **canvas_item_add_particles** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` particles, :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map **)**
  2080. Adds a particle system to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2081. .. rst-class:: classref-item-separator
  2082. ----
  2083. .. _class_VisualServer_method_canvas_item_add_polygon:
  2084. .. rst-class:: classref-method
  2085. void **canvas_item_add_polygon** **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs=PoolVector2Array( ), :ref:`RID<class_RID>` texture, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` antialiased=false **)**
  2086. Adds a polygon to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2087. .. rst-class:: classref-item-separator
  2088. ----
  2089. .. _class_VisualServer_method_canvas_item_add_polyline:
  2090. .. rst-class:: classref-method
  2091. void **canvas_item_add_polyline** **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`float<class_float>` width=1.0, :ref:`bool<class_bool>` antialiased=false **)**
  2092. Adds a polyline, which is a line from multiple points with a width, to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2093. .. rst-class:: classref-item-separator
  2094. ----
  2095. .. _class_VisualServer_method_canvas_item_add_primitive:
  2096. .. rst-class:: classref-method
  2097. void **canvas_item_add_primitive** **(** :ref:`RID<class_RID>` item, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs, :ref:`RID<class_RID>` texture, :ref:`float<class_float>` width=1.0, :ref:`RID<class_RID>` normal_map **)**
  2098. Adds a primitive to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2099. .. rst-class:: classref-item-separator
  2100. ----
  2101. .. _class_VisualServer_method_canvas_item_add_rect:
  2102. .. rst-class:: classref-method
  2103. void **canvas_item_add_rect** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`Color<class_Color>` color **)**
  2104. Adds a rectangle to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2105. .. rst-class:: classref-item-separator
  2106. ----
  2107. .. _class_VisualServer_method_canvas_item_add_set_transform:
  2108. .. rst-class:: classref-method
  2109. void **canvas_item_add_set_transform** **(** :ref:`RID<class_RID>` item, :ref:`Transform2D<class_Transform2D>` transform **)**
  2110. Adds a :ref:`Transform2D<class_Transform2D>` command to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2111. This sets the extra_matrix uniform when executed. This affects the later commands of the canvas item.
  2112. .. rst-class:: classref-item-separator
  2113. ----
  2114. .. _class_VisualServer_method_canvas_item_add_texture_rect:
  2115. .. rst-class:: classref-method
  2116. void **canvas_item_add_texture_rect** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`bool<class_bool>` tile=false, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`bool<class_bool>` transpose=false, :ref:`RID<class_RID>` normal_map **)**
  2117. Adds a textured rect to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2118. .. rst-class:: classref-item-separator
  2119. ----
  2120. .. _class_VisualServer_method_canvas_item_add_texture_rect_region:
  2121. .. rst-class:: classref-method
  2122. void **canvas_item_add_texture_rect_region** **(** :ref:`RID<class_RID>` item, :ref:`Rect2<class_Rect2>` rect, :ref:`RID<class_RID>` texture, :ref:`Rect2<class_Rect2>` src_rect, :ref:`Color<class_Color>` modulate=Color( 1, 1, 1, 1 ), :ref:`bool<class_bool>` transpose=false, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` clip_uv=true **)**
  2123. Adds a texture rect with region setting to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2124. .. rst-class:: classref-item-separator
  2125. ----
  2126. .. _class_VisualServer_method_canvas_item_add_triangle_array:
  2127. .. rst-class:: classref-method
  2128. void **canvas_item_add_triangle_array** **(** :ref:`RID<class_RID>` item, :ref:`PoolIntArray<class_PoolIntArray>` indices, :ref:`PoolVector2Array<class_PoolVector2Array>` points, :ref:`PoolColorArray<class_PoolColorArray>` colors, :ref:`PoolVector2Array<class_PoolVector2Array>` uvs=PoolVector2Array( ), :ref:`PoolIntArray<class_PoolIntArray>` bones=PoolIntArray( ), :ref:`PoolRealArray<class_PoolRealArray>` weights=PoolRealArray( ), :ref:`RID<class_RID>` texture, :ref:`int<class_int>` count=-1, :ref:`RID<class_RID>` normal_map, :ref:`bool<class_bool>` antialiased=false, :ref:`bool<class_bool>` antialiasing_use_indices=false **)**
  2129. Adds a triangle array to the :ref:`CanvasItem<class_CanvasItem>`'s draw commands.
  2130. .. rst-class:: classref-item-separator
  2131. ----
  2132. .. _class_VisualServer_method_canvas_item_clear:
  2133. .. rst-class:: classref-method
  2134. void **canvas_item_clear** **(** :ref:`RID<class_RID>` item **)**
  2135. Clears the :ref:`CanvasItem<class_CanvasItem>` and removes all commands in it.
  2136. .. rst-class:: classref-item-separator
  2137. ----
  2138. .. _class_VisualServer_method_canvas_item_create:
  2139. .. rst-class:: classref-method
  2140. :ref:`RID<class_RID>` **canvas_item_create** **(** **)**
  2141. Creates a new :ref:`CanvasItem<class_CanvasItem>` and returns its :ref:`RID<class_RID>`. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_item_*`` VisualServer functions.
  2142. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2143. .. rst-class:: classref-item-separator
  2144. ----
  2145. .. _class_VisualServer_method_canvas_item_set_clip:
  2146. .. rst-class:: classref-method
  2147. void **canvas_item_set_clip** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` clip **)**
  2148. Sets clipping for the :ref:`CanvasItem<class_CanvasItem>`.
  2149. .. rst-class:: classref-item-separator
  2150. ----
  2151. .. _class_VisualServer_method_canvas_item_set_copy_to_backbuffer:
  2152. .. rst-class:: classref-method
  2153. void **canvas_item_set_copy_to_backbuffer** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled, :ref:`Rect2<class_Rect2>` rect **)**
  2154. Sets the :ref:`CanvasItem<class_CanvasItem>` to copy a rect to the backbuffer.
  2155. .. rst-class:: classref-item-separator
  2156. ----
  2157. .. _class_VisualServer_method_canvas_item_set_custom_rect:
  2158. .. rst-class:: classref-method
  2159. void **canvas_item_set_custom_rect** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` use_custom_rect, :ref:`Rect2<class_Rect2>` rect=Rect2( 0, 0, 0, 0 ) **)**
  2160. Defines a custom drawing rectangle for the :ref:`CanvasItem<class_CanvasItem>`.
  2161. .. rst-class:: classref-item-separator
  2162. ----
  2163. .. _class_VisualServer_method_canvas_item_set_distance_field_mode:
  2164. .. rst-class:: classref-method
  2165. void **canvas_item_set_distance_field_mode** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)**
  2166. Enables the use of distance fields for GUI elements that are rendering distance field based fonts.
  2167. .. rst-class:: classref-item-separator
  2168. ----
  2169. .. _class_VisualServer_method_canvas_item_set_draw_behind_parent:
  2170. .. rst-class:: classref-method
  2171. void **canvas_item_set_draw_behind_parent** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)**
  2172. Sets :ref:`CanvasItem<class_CanvasItem>` to be drawn behind its parent.
  2173. .. rst-class:: classref-item-separator
  2174. ----
  2175. .. _class_VisualServer_method_canvas_item_set_draw_index:
  2176. .. rst-class:: classref-method
  2177. void **canvas_item_set_draw_index** **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` index **)**
  2178. Sets the index for the :ref:`CanvasItem<class_CanvasItem>`.
  2179. .. rst-class:: classref-item-separator
  2180. ----
  2181. .. _class_VisualServer_method_canvas_item_set_light_mask:
  2182. .. rst-class:: classref-method
  2183. void **canvas_item_set_light_mask** **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` mask **)**
  2184. The light mask. See :ref:`LightOccluder2D<class_LightOccluder2D>` for more information on light masks.
  2185. .. rst-class:: classref-item-separator
  2186. ----
  2187. .. _class_VisualServer_method_canvas_item_set_material:
  2188. .. rst-class:: classref-method
  2189. void **canvas_item_set_material** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` material **)**
  2190. Sets a new material to the :ref:`CanvasItem<class_CanvasItem>`.
  2191. .. rst-class:: classref-item-separator
  2192. ----
  2193. .. _class_VisualServer_method_canvas_item_set_modulate:
  2194. .. rst-class:: classref-method
  2195. void **canvas_item_set_modulate** **(** :ref:`RID<class_RID>` item, :ref:`Color<class_Color>` color **)**
  2196. Sets the color that modulates the :ref:`CanvasItem<class_CanvasItem>` and its children.
  2197. .. rst-class:: classref-item-separator
  2198. ----
  2199. .. _class_VisualServer_method_canvas_item_set_parent:
  2200. .. rst-class:: classref-method
  2201. void **canvas_item_set_parent** **(** :ref:`RID<class_RID>` item, :ref:`RID<class_RID>` parent **)**
  2202. Sets the parent for the :ref:`CanvasItem<class_CanvasItem>`. The parent can be another canvas item, or it can be the root canvas that is attached to the viewport.
  2203. .. rst-class:: classref-item-separator
  2204. ----
  2205. .. _class_VisualServer_method_canvas_item_set_self_modulate:
  2206. .. rst-class:: classref-method
  2207. void **canvas_item_set_self_modulate** **(** :ref:`RID<class_RID>` item, :ref:`Color<class_Color>` color **)**
  2208. Sets the color that modulates the :ref:`CanvasItem<class_CanvasItem>` without children.
  2209. .. rst-class:: classref-item-separator
  2210. ----
  2211. .. _class_VisualServer_method_canvas_item_set_sort_children_by_y:
  2212. .. rst-class:: classref-method
  2213. void **canvas_item_set_sort_children_by_y** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)**
  2214. Sets if :ref:`CanvasItem<class_CanvasItem>`'s children should be sorted by y-position.
  2215. .. rst-class:: classref-item-separator
  2216. ----
  2217. .. _class_VisualServer_method_canvas_item_set_transform:
  2218. .. rst-class:: classref-method
  2219. void **canvas_item_set_transform** **(** :ref:`RID<class_RID>` item, :ref:`Transform2D<class_Transform2D>` transform **)**
  2220. Sets the :ref:`CanvasItem<class_CanvasItem>`'s :ref:`Transform2D<class_Transform2D>`.
  2221. .. rst-class:: classref-item-separator
  2222. ----
  2223. .. _class_VisualServer_method_canvas_item_set_use_parent_material:
  2224. .. rst-class:: classref-method
  2225. void **canvas_item_set_use_parent_material** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)**
  2226. Sets if the :ref:`CanvasItem<class_CanvasItem>` uses its parent's material.
  2227. .. rst-class:: classref-item-separator
  2228. ----
  2229. .. _class_VisualServer_method_canvas_item_set_visible:
  2230. .. rst-class:: classref-method
  2231. void **canvas_item_set_visible** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` visible **)**
  2232. Sets if the canvas item (including its children) is visible.
  2233. .. rst-class:: classref-item-separator
  2234. ----
  2235. .. _class_VisualServer_method_canvas_item_set_z_as_relative_to_parent:
  2236. .. rst-class:: classref-method
  2237. void **canvas_item_set_z_as_relative_to_parent** **(** :ref:`RID<class_RID>` item, :ref:`bool<class_bool>` enabled **)**
  2238. If this is enabled, the Z index of the parent will be added to the children's Z index.
  2239. .. rst-class:: classref-item-separator
  2240. ----
  2241. .. _class_VisualServer_method_canvas_item_set_z_index:
  2242. .. rst-class:: classref-method
  2243. void **canvas_item_set_z_index** **(** :ref:`RID<class_RID>` item, :ref:`int<class_int>` z_index **)**
  2244. Sets the :ref:`CanvasItem<class_CanvasItem>`'s Z index, i.e. its draw order (lower indexes are drawn first).
  2245. .. rst-class:: classref-item-separator
  2246. ----
  2247. .. _class_VisualServer_method_canvas_light_attach_to_canvas:
  2248. .. rst-class:: classref-method
  2249. void **canvas_light_attach_to_canvas** **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` canvas **)**
  2250. Attaches the canvas light to the canvas. Removes it from its previous canvas.
  2251. .. rst-class:: classref-item-separator
  2252. ----
  2253. .. _class_VisualServer_method_canvas_light_create:
  2254. .. rst-class:: classref-method
  2255. :ref:`RID<class_RID>` **canvas_light_create** **(** **)**
  2256. Creates a canvas light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_light_*`` VisualServer functions.
  2257. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2258. .. rst-class:: classref-item-separator
  2259. ----
  2260. .. _class_VisualServer_method_canvas_light_occluder_attach_to_canvas:
  2261. .. rst-class:: classref-method
  2262. void **canvas_light_occluder_attach_to_canvas** **(** :ref:`RID<class_RID>` occluder, :ref:`RID<class_RID>` canvas **)**
  2263. Attaches a light occluder to the canvas. Removes it from its previous canvas.
  2264. .. rst-class:: classref-item-separator
  2265. ----
  2266. .. _class_VisualServer_method_canvas_light_occluder_create:
  2267. .. rst-class:: classref-method
  2268. :ref:`RID<class_RID>` **canvas_light_occluder_create** **(** **)**
  2269. Creates a light occluder and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_light_ocluder_*`` VisualServer functions.
  2270. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2271. .. rst-class:: classref-item-separator
  2272. ----
  2273. .. _class_VisualServer_method_canvas_light_occluder_set_enabled:
  2274. .. rst-class:: classref-method
  2275. void **canvas_light_occluder_set_enabled** **(** :ref:`RID<class_RID>` occluder, :ref:`bool<class_bool>` enabled **)**
  2276. Enables or disables light occluder.
  2277. .. rst-class:: classref-item-separator
  2278. ----
  2279. .. _class_VisualServer_method_canvas_light_occluder_set_light_mask:
  2280. .. rst-class:: classref-method
  2281. void **canvas_light_occluder_set_light_mask** **(** :ref:`RID<class_RID>` occluder, :ref:`int<class_int>` mask **)**
  2282. The light mask. See :ref:`LightOccluder2D<class_LightOccluder2D>` for more information on light masks.
  2283. .. rst-class:: classref-item-separator
  2284. ----
  2285. .. _class_VisualServer_method_canvas_light_occluder_set_polygon:
  2286. .. rst-class:: classref-method
  2287. void **canvas_light_occluder_set_polygon** **(** :ref:`RID<class_RID>` occluder, :ref:`RID<class_RID>` polygon **)**
  2288. Sets a light occluder's polygon.
  2289. .. rst-class:: classref-item-separator
  2290. ----
  2291. .. _class_VisualServer_method_canvas_light_occluder_set_transform:
  2292. .. rst-class:: classref-method
  2293. void **canvas_light_occluder_set_transform** **(** :ref:`RID<class_RID>` occluder, :ref:`Transform2D<class_Transform2D>` transform **)**
  2294. Sets a light occluder's :ref:`Transform2D<class_Transform2D>`.
  2295. .. rst-class:: classref-item-separator
  2296. ----
  2297. .. _class_VisualServer_method_canvas_light_set_color:
  2298. .. rst-class:: classref-method
  2299. void **canvas_light_set_color** **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)**
  2300. Sets the color for a light.
  2301. .. rst-class:: classref-item-separator
  2302. ----
  2303. .. _class_VisualServer_method_canvas_light_set_enabled:
  2304. .. rst-class:: classref-method
  2305. void **canvas_light_set_enabled** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**
  2306. Enables or disables a canvas light.
  2307. .. rst-class:: classref-item-separator
  2308. ----
  2309. .. _class_VisualServer_method_canvas_light_set_energy:
  2310. .. rst-class:: classref-method
  2311. void **canvas_light_set_energy** **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` energy **)**
  2312. Sets a canvas light's energy.
  2313. .. rst-class:: classref-item-separator
  2314. ----
  2315. .. _class_VisualServer_method_canvas_light_set_height:
  2316. .. rst-class:: classref-method
  2317. void **canvas_light_set_height** **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` height **)**
  2318. Sets a canvas light's height.
  2319. .. rst-class:: classref-item-separator
  2320. ----
  2321. .. _class_VisualServer_method_canvas_light_set_item_cull_mask:
  2322. .. rst-class:: classref-method
  2323. void **canvas_light_set_item_cull_mask** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)**
  2324. The light mask. See :ref:`LightOccluder2D<class_LightOccluder2D>` for more information on light masks.
  2325. .. rst-class:: classref-item-separator
  2326. ----
  2327. .. _class_VisualServer_method_canvas_light_set_item_shadow_cull_mask:
  2328. .. rst-class:: classref-method
  2329. void **canvas_light_set_item_shadow_cull_mask** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)**
  2330. The binary mask used to determine which layers this canvas light's shadows affects. See :ref:`LightOccluder2D<class_LightOccluder2D>` for more information on light masks.
  2331. .. rst-class:: classref-item-separator
  2332. ----
  2333. .. _class_VisualServer_method_canvas_light_set_layer_range:
  2334. .. rst-class:: classref-method
  2335. void **canvas_light_set_layer_range** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` min_layer, :ref:`int<class_int>` max_layer **)**
  2336. The layer range that gets rendered with this light.
  2337. .. rst-class:: classref-item-separator
  2338. ----
  2339. .. _class_VisualServer_method_canvas_light_set_mode:
  2340. .. rst-class:: classref-method
  2341. void **canvas_light_set_mode** **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` mode **)**
  2342. The mode of the light, see :ref:`CanvasLightMode<enum_VisualServer_CanvasLightMode>` constants.
  2343. .. rst-class:: classref-item-separator
  2344. ----
  2345. .. _class_VisualServer_method_canvas_light_set_scale:
  2346. .. rst-class:: classref-method
  2347. void **canvas_light_set_scale** **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` scale **)**
  2348. Sets the texture's scale factor of the light. Equivalent to :ref:`Light2D.texture_scale<class_Light2D_property_texture_scale>`.
  2349. .. rst-class:: classref-item-separator
  2350. ----
  2351. .. _class_VisualServer_method_canvas_light_set_shadow_buffer_size:
  2352. .. rst-class:: classref-method
  2353. void **canvas_light_set_shadow_buffer_size** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` size **)**
  2354. Sets the width of the shadow buffer, size gets scaled to the next power of two for this.
  2355. .. rst-class:: classref-item-separator
  2356. ----
  2357. .. _class_VisualServer_method_canvas_light_set_shadow_color:
  2358. .. rst-class:: classref-method
  2359. void **canvas_light_set_shadow_color** **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)**
  2360. Sets the color of the canvas light's shadow.
  2361. .. rst-class:: classref-item-separator
  2362. ----
  2363. .. _class_VisualServer_method_canvas_light_set_shadow_enabled:
  2364. .. rst-class:: classref-method
  2365. void **canvas_light_set_shadow_enabled** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**
  2366. Enables or disables the canvas light's shadow.
  2367. .. rst-class:: classref-item-separator
  2368. ----
  2369. .. _class_VisualServer_method_canvas_light_set_shadow_filter:
  2370. .. rst-class:: classref-method
  2371. void **canvas_light_set_shadow_filter** **(** :ref:`RID<class_RID>` light, :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` filter **)**
  2372. Sets the canvas light's shadow's filter, see :ref:`CanvasLightShadowFilter<enum_VisualServer_CanvasLightShadowFilter>` constants.
  2373. .. rst-class:: classref-item-separator
  2374. ----
  2375. .. _class_VisualServer_method_canvas_light_set_shadow_gradient_length:
  2376. .. rst-class:: classref-method
  2377. void **canvas_light_set_shadow_gradient_length** **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` length **)**
  2378. Sets the length of the shadow's gradient.
  2379. .. rst-class:: classref-item-separator
  2380. ----
  2381. .. _class_VisualServer_method_canvas_light_set_shadow_smooth:
  2382. .. rst-class:: classref-method
  2383. void **canvas_light_set_shadow_smooth** **(** :ref:`RID<class_RID>` light, :ref:`float<class_float>` smooth **)**
  2384. Smoothens the shadow. The lower, the smoother.
  2385. .. rst-class:: classref-item-separator
  2386. ----
  2387. .. _class_VisualServer_method_canvas_light_set_texture:
  2388. .. rst-class:: classref-method
  2389. void **canvas_light_set_texture** **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` texture **)**
  2390. Sets texture to be used by light. Equivalent to :ref:`Light2D.texture<class_Light2D_property_texture>`.
  2391. .. rst-class:: classref-item-separator
  2392. ----
  2393. .. _class_VisualServer_method_canvas_light_set_texture_offset:
  2394. .. rst-class:: classref-method
  2395. void **canvas_light_set_texture_offset** **(** :ref:`RID<class_RID>` light, :ref:`Vector2<class_Vector2>` offset **)**
  2396. Sets the offset of the light's texture. Equivalent to :ref:`Light2D.offset<class_Light2D_property_offset>`.
  2397. .. rst-class:: classref-item-separator
  2398. ----
  2399. .. _class_VisualServer_method_canvas_light_set_transform:
  2400. .. rst-class:: classref-method
  2401. void **canvas_light_set_transform** **(** :ref:`RID<class_RID>` light, :ref:`Transform2D<class_Transform2D>` transform **)**
  2402. Sets the canvas light's :ref:`Transform2D<class_Transform2D>`.
  2403. .. rst-class:: classref-item-separator
  2404. ----
  2405. .. _class_VisualServer_method_canvas_light_set_z_range:
  2406. .. rst-class:: classref-method
  2407. void **canvas_light_set_z_range** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` min_z, :ref:`int<class_int>` max_z **)**
  2408. Sets the Z range of objects that will be affected by this light. Equivalent to :ref:`Light2D.range_z_min<class_Light2D_property_range_z_min>` and :ref:`Light2D.range_z_max<class_Light2D_property_range_z_max>`.
  2409. .. rst-class:: classref-item-separator
  2410. ----
  2411. .. _class_VisualServer_method_canvas_occluder_polygon_create:
  2412. .. rst-class:: classref-method
  2413. :ref:`RID<class_RID>` **canvas_occluder_polygon_create** **(** **)**
  2414. Creates a new light occluder polygon and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``canvas_occluder_polygon_*`` VisualServer functions.
  2415. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2416. .. rst-class:: classref-item-separator
  2417. ----
  2418. .. _class_VisualServer_method_canvas_occluder_polygon_set_cull_mode:
  2419. .. rst-class:: classref-method
  2420. void **canvas_occluder_polygon_set_cull_mode** **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` mode **)**
  2421. Sets an occluder polygons cull mode. See :ref:`CanvasOccluderPolygonCullMode<enum_VisualServer_CanvasOccluderPolygonCullMode>` constants.
  2422. .. rst-class:: classref-item-separator
  2423. ----
  2424. .. _class_VisualServer_method_canvas_occluder_polygon_set_shape:
  2425. .. rst-class:: classref-method
  2426. void **canvas_occluder_polygon_set_shape** **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`PoolVector2Array<class_PoolVector2Array>` shape, :ref:`bool<class_bool>` closed **)**
  2427. Sets the shape of the occluder polygon.
  2428. .. rst-class:: classref-item-separator
  2429. ----
  2430. .. _class_VisualServer_method_canvas_occluder_polygon_set_shape_as_lines:
  2431. .. rst-class:: classref-method
  2432. void **canvas_occluder_polygon_set_shape_as_lines** **(** :ref:`RID<class_RID>` occluder_polygon, :ref:`PoolVector2Array<class_PoolVector2Array>` shape **)**
  2433. Sets the shape of the occluder polygon as lines.
  2434. .. rst-class:: classref-item-separator
  2435. ----
  2436. .. _class_VisualServer_method_canvas_set_item_mirroring:
  2437. .. rst-class:: classref-method
  2438. void **canvas_set_item_mirroring** **(** :ref:`RID<class_RID>` canvas, :ref:`RID<class_RID>` item, :ref:`Vector2<class_Vector2>` mirroring **)**
  2439. A copy of the canvas item will be drawn with a local offset of the mirroring :ref:`Vector2<class_Vector2>`.
  2440. .. rst-class:: classref-item-separator
  2441. ----
  2442. .. _class_VisualServer_method_canvas_set_modulate:
  2443. .. rst-class:: classref-method
  2444. void **canvas_set_modulate** **(** :ref:`RID<class_RID>` canvas, :ref:`Color<class_Color>` color **)**
  2445. Modulates all colors in the given canvas.
  2446. .. rst-class:: classref-item-separator
  2447. ----
  2448. .. _class_VisualServer_method_directional_light_create:
  2449. .. rst-class:: classref-method
  2450. :ref:`RID<class_RID>` **directional_light_create** **(** **)**
  2451. Creates a directional light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions.
  2452. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2453. To place in a scene, attach this directional light to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  2454. .. rst-class:: classref-item-separator
  2455. ----
  2456. .. _class_VisualServer_method_draw:
  2457. .. rst-class:: classref-method
  2458. void **draw** **(** :ref:`bool<class_bool>` swap_buffers=true, :ref:`float<class_float>` frame_step=0.0 **)**
  2459. Draws a frame. *This method is deprecated*, please use :ref:`force_draw<class_VisualServer_method_force_draw>` instead.
  2460. .. rst-class:: classref-item-separator
  2461. ----
  2462. .. _class_VisualServer_method_environment_create:
  2463. .. rst-class:: classref-method
  2464. :ref:`RID<class_RID>` **environment_create** **(** **)**
  2465. Creates an environment and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``environment_*`` VisualServer functions.
  2466. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2467. .. rst-class:: classref-item-separator
  2468. ----
  2469. .. _class_VisualServer_method_environment_set_adjustment:
  2470. .. rst-class:: classref-method
  2471. void **environment_set_adjustment** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` brightness, :ref:`float<class_float>` contrast, :ref:`float<class_float>` saturation, :ref:`RID<class_RID>` ramp **)**
  2472. Sets the values to be used with the "Adjustment" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2473. .. rst-class:: classref-item-separator
  2474. ----
  2475. .. _class_VisualServer_method_environment_set_ambient_light:
  2476. .. rst-class:: classref-method
  2477. void **environment_set_ambient_light** **(** :ref:`RID<class_RID>` env, :ref:`Color<class_Color>` color, :ref:`float<class_float>` energy=1.0, :ref:`float<class_float>` sky_contibution=0.0 **)**
  2478. Sets the ambient light parameters. See :ref:`Environment<class_Environment>` for more details.
  2479. .. rst-class:: classref-item-separator
  2480. ----
  2481. .. _class_VisualServer_method_environment_set_background:
  2482. .. rst-class:: classref-method
  2483. void **environment_set_background** **(** :ref:`RID<class_RID>` env, :ref:`EnvironmentBG<enum_VisualServer_EnvironmentBG>` bg **)**
  2484. Sets the *BGMode* of the environment. Equivalent to :ref:`Environment.background_mode<class_Environment_property_background_mode>`.
  2485. .. rst-class:: classref-item-separator
  2486. ----
  2487. .. _class_VisualServer_method_environment_set_bg_color:
  2488. .. rst-class:: classref-method
  2489. void **environment_set_bg_color** **(** :ref:`RID<class_RID>` env, :ref:`Color<class_Color>` color **)**
  2490. Color displayed for clear areas of the scene (if using Custom color or Color+Sky background modes).
  2491. .. rst-class:: classref-item-separator
  2492. ----
  2493. .. _class_VisualServer_method_environment_set_bg_energy:
  2494. .. rst-class:: classref-method
  2495. void **environment_set_bg_energy** **(** :ref:`RID<class_RID>` env, :ref:`float<class_float>` energy **)**
  2496. Sets the intensity of the background color.
  2497. .. rst-class:: classref-item-separator
  2498. ----
  2499. .. _class_VisualServer_method_environment_set_canvas_max_layer:
  2500. .. rst-class:: classref-method
  2501. void **environment_set_canvas_max_layer** **(** :ref:`RID<class_RID>` env, :ref:`int<class_int>` max_layer **)**
  2502. Sets the maximum layer to use if using Canvas background mode.
  2503. .. rst-class:: classref-item-separator
  2504. ----
  2505. .. _class_VisualServer_method_environment_set_dof_blur_far:
  2506. .. rst-class:: classref-method
  2507. void **environment_set_dof_blur_far** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` distance, :ref:`float<class_float>` transition, :ref:`float<class_float>` far_amount, :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` quality **)**
  2508. Sets the values to be used with the "DoF Far Blur" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2509. .. rst-class:: classref-item-separator
  2510. ----
  2511. .. _class_VisualServer_method_environment_set_dof_blur_near:
  2512. .. rst-class:: classref-method
  2513. void **environment_set_dof_blur_near** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` distance, :ref:`float<class_float>` transition, :ref:`float<class_float>` far_amount, :ref:`EnvironmentDOFBlurQuality<enum_VisualServer_EnvironmentDOFBlurQuality>` quality **)**
  2514. Sets the values to be used with the "DoF Near Blur" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2515. .. rst-class:: classref-item-separator
  2516. ----
  2517. .. _class_VisualServer_method_environment_set_fog:
  2518. .. rst-class:: classref-method
  2519. void **environment_set_fog** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`Color<class_Color>` color, :ref:`Color<class_Color>` sun_color, :ref:`float<class_float>` sun_amount **)**
  2520. Sets the variables to be used with the scene fog. See :ref:`Environment<class_Environment>` for more details.
  2521. .. rst-class:: classref-item-separator
  2522. ----
  2523. .. _class_VisualServer_method_environment_set_fog_depth:
  2524. .. rst-class:: classref-method
  2525. void **environment_set_fog_depth** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` depth_begin, :ref:`float<class_float>` depth_end, :ref:`float<class_float>` depth_curve, :ref:`bool<class_bool>` transmit, :ref:`float<class_float>` transmit_curve **)**
  2526. Sets the variables to be used with the fog depth effect. See :ref:`Environment<class_Environment>` for more details.
  2527. .. rst-class:: classref-item-separator
  2528. ----
  2529. .. _class_VisualServer_method_environment_set_fog_height:
  2530. .. rst-class:: classref-method
  2531. void **environment_set_fog_height** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` min_height, :ref:`float<class_float>` max_height, :ref:`float<class_float>` height_curve **)**
  2532. Sets the variables to be used with the fog height effect. See :ref:`Environment<class_Environment>` for more details.
  2533. .. rst-class:: classref-item-separator
  2534. ----
  2535. .. _class_VisualServer_method_environment_set_glow:
  2536. .. rst-class:: classref-method
  2537. void **environment_set_glow** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`int<class_int>` level_flags, :ref:`float<class_float>` intensity, :ref:`float<class_float>` strength, :ref:`float<class_float>` bloom_threshold, :ref:`EnvironmentGlowBlendMode<enum_VisualServer_EnvironmentGlowBlendMode>` blend_mode, :ref:`float<class_float>` hdr_bleed_threshold, :ref:`float<class_float>` hdr_bleed_scale, :ref:`float<class_float>` hdr_luminance_cap, :ref:`bool<class_bool>` bicubic_upscale, :ref:`bool<class_bool>` high_quality **)**
  2538. Sets the variables to be used with the "glow" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2539. .. rst-class:: classref-item-separator
  2540. ----
  2541. .. _class_VisualServer_method_environment_set_sky:
  2542. .. rst-class:: classref-method
  2543. void **environment_set_sky** **(** :ref:`RID<class_RID>` env, :ref:`RID<class_RID>` sky **)**
  2544. Sets the :ref:`Sky<class_Sky>` to be used as the environment's background when using *BGMode* sky. Equivalent to :ref:`Environment.background_sky<class_Environment_property_background_sky>`.
  2545. .. rst-class:: classref-item-separator
  2546. ----
  2547. .. _class_VisualServer_method_environment_set_sky_custom_fov:
  2548. .. rst-class:: classref-method
  2549. void **environment_set_sky_custom_fov** **(** :ref:`RID<class_RID>` env, :ref:`float<class_float>` scale **)**
  2550. Sets a custom field of view for the background :ref:`Sky<class_Sky>`. Equivalent to :ref:`Environment.background_sky_custom_fov<class_Environment_property_background_sky_custom_fov>`.
  2551. .. rst-class:: classref-item-separator
  2552. ----
  2553. .. _class_VisualServer_method_environment_set_sky_orientation:
  2554. .. rst-class:: classref-method
  2555. void **environment_set_sky_orientation** **(** :ref:`RID<class_RID>` env, :ref:`Basis<class_Basis>` orientation **)**
  2556. Sets the rotation of the background :ref:`Sky<class_Sky>` expressed as a :ref:`Basis<class_Basis>`. Equivalent to :ref:`Environment.background_sky_orientation<class_Environment_property_background_sky_orientation>`.
  2557. .. rst-class:: classref-item-separator
  2558. ----
  2559. .. _class_VisualServer_method_environment_set_ssao:
  2560. .. rst-class:: classref-method
  2561. void **environment_set_ssao** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`float<class_float>` radius, :ref:`float<class_float>` intensity, :ref:`float<class_float>` radius2, :ref:`float<class_float>` intensity2, :ref:`float<class_float>` bias, :ref:`float<class_float>` light_affect, :ref:`float<class_float>` ao_channel_affect, :ref:`Color<class_Color>` color, :ref:`EnvironmentSSAOQuality<enum_VisualServer_EnvironmentSSAOQuality>` quality, :ref:`EnvironmentSSAOBlur<enum_VisualServer_EnvironmentSSAOBlur>` blur, :ref:`float<class_float>` bilateral_sharpness **)**
  2562. Sets the variables to be used with the "Screen Space Ambient Occlusion (SSAO)" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2563. .. rst-class:: classref-item-separator
  2564. ----
  2565. .. _class_VisualServer_method_environment_set_ssr:
  2566. .. rst-class:: classref-method
  2567. void **environment_set_ssr** **(** :ref:`RID<class_RID>` env, :ref:`bool<class_bool>` enable, :ref:`int<class_int>` max_steps, :ref:`float<class_float>` fade_in, :ref:`float<class_float>` fade_out, :ref:`float<class_float>` depth_tolerance, :ref:`bool<class_bool>` roughness **)**
  2568. Sets the variables to be used with the "screen space reflections" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2569. .. rst-class:: classref-item-separator
  2570. ----
  2571. .. _class_VisualServer_method_environment_set_tonemap:
  2572. .. rst-class:: classref-method
  2573. void **environment_set_tonemap** **(** :ref:`RID<class_RID>` env, :ref:`EnvironmentToneMapper<enum_VisualServer_EnvironmentToneMapper>` tone_mapper, :ref:`float<class_float>` exposure, :ref:`float<class_float>` white, :ref:`bool<class_bool>` auto_exposure, :ref:`float<class_float>` min_luminance, :ref:`float<class_float>` max_luminance, :ref:`float<class_float>` auto_exp_speed, :ref:`float<class_float>` auto_exp_grey **)**
  2574. Sets the variables to be used with the "tonemap" post-process effect. See :ref:`Environment<class_Environment>` for more details.
  2575. .. rst-class:: classref-item-separator
  2576. ----
  2577. .. _class_VisualServer_method_finish:
  2578. .. rst-class:: classref-method
  2579. void **finish** **(** **)**
  2580. Removes buffers and clears testcubes.
  2581. .. rst-class:: classref-item-separator
  2582. ----
  2583. .. _class_VisualServer_method_force_draw:
  2584. .. rst-class:: classref-method
  2585. void **force_draw** **(** :ref:`bool<class_bool>` swap_buffers=true, :ref:`float<class_float>` frame_step=0.0 **)**
  2586. Forces a frame to be drawn when the function is called. Drawing a frame updates all :ref:`Viewport<class_Viewport>`\ s that are set to update. Use with extreme caution.
  2587. .. rst-class:: classref-item-separator
  2588. ----
  2589. .. _class_VisualServer_method_force_sync:
  2590. .. rst-class:: classref-method
  2591. void **force_sync** **(** **)**
  2592. Synchronizes threads.
  2593. .. rst-class:: classref-item-separator
  2594. ----
  2595. .. _class_VisualServer_method_free_rid:
  2596. .. rst-class:: classref-method
  2597. void **free_rid** **(** :ref:`RID<class_RID>` rid **)**
  2598. Tries to free an object in the VisualServer.
  2599. .. rst-class:: classref-item-separator
  2600. ----
  2601. .. _class_VisualServer_method_get_render_info:
  2602. .. rst-class:: classref-method
  2603. :ref:`int<class_int>` **get_render_info** **(** :ref:`RenderInfo<enum_VisualServer_RenderInfo>` info **)**
  2604. Returns a certain information, see :ref:`RenderInfo<enum_VisualServer_RenderInfo>` for options.
  2605. .. rst-class:: classref-item-separator
  2606. ----
  2607. .. _class_VisualServer_method_get_test_cube:
  2608. .. rst-class:: classref-method
  2609. :ref:`RID<class_RID>` **get_test_cube** **(** **)**
  2610. Returns the id of the test cube. Creates one if none exists.
  2611. .. rst-class:: classref-item-separator
  2612. ----
  2613. .. _class_VisualServer_method_get_test_texture:
  2614. .. rst-class:: classref-method
  2615. :ref:`RID<class_RID>` **get_test_texture** **(** **)**
  2616. Returns the id of the test texture. Creates one if none exists.
  2617. .. rst-class:: classref-item-separator
  2618. ----
  2619. .. _class_VisualServer_method_get_video_adapter_name:
  2620. .. rst-class:: classref-method
  2621. :ref:`String<class_String>` **get_video_adapter_name** **(** **)** |const|
  2622. Returns the name of the video adapter (e.g. "GeForce GTX 1080/PCIe/SSE2").
  2623. \ **Note:** When running a headless or server binary, this function returns an empty string.
  2624. .. rst-class:: classref-item-separator
  2625. ----
  2626. .. _class_VisualServer_method_get_video_adapter_vendor:
  2627. .. rst-class:: classref-method
  2628. :ref:`String<class_String>` **get_video_adapter_vendor** **(** **)** |const|
  2629. Returns the vendor of the video adapter (e.g. "NVIDIA Corporation").
  2630. \ **Note:** When running a headless or server binary, this function returns an empty string.
  2631. .. rst-class:: classref-item-separator
  2632. ----
  2633. .. _class_VisualServer_method_get_white_texture:
  2634. .. rst-class:: classref-method
  2635. :ref:`RID<class_RID>` **get_white_texture** **(** **)**
  2636. Returns the id of a white texture. Creates one if none exists.
  2637. .. rst-class:: classref-item-separator
  2638. ----
  2639. .. _class_VisualServer_method_gi_probe_create:
  2640. .. rst-class:: classref-method
  2641. :ref:`RID<class_RID>` **gi_probe_create** **(** **)**
  2642. Creates a GI probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``gi_probe_*`` VisualServer functions.
  2643. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2644. To place in a scene, attach this GI probe to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  2645. .. rst-class:: classref-item-separator
  2646. ----
  2647. .. _class_VisualServer_method_gi_probe_get_bias:
  2648. .. rst-class:: classref-method
  2649. :ref:`float<class_float>` **gi_probe_get_bias** **(** :ref:`RID<class_RID>` probe **)** |const|
  2650. Returns the bias value for the GI probe. Bias is used to avoid self occlusion. Equivalent to :ref:`GIProbeData.bias<class_GIProbeData_property_bias>`.
  2651. .. rst-class:: classref-item-separator
  2652. ----
  2653. .. _class_VisualServer_method_gi_probe_get_bounds:
  2654. .. rst-class:: classref-method
  2655. :ref:`AABB<class_AABB>` **gi_probe_get_bounds** **(** :ref:`RID<class_RID>` probe **)** |const|
  2656. Returns the axis-aligned bounding box that covers the full extent of the GI probe.
  2657. .. rst-class:: classref-item-separator
  2658. ----
  2659. .. _class_VisualServer_method_gi_probe_get_cell_size:
  2660. .. rst-class:: classref-method
  2661. :ref:`float<class_float>` **gi_probe_get_cell_size** **(** :ref:`RID<class_RID>` probe **)** |const|
  2662. Returns the cell size set by :ref:`gi_probe_set_cell_size<class_VisualServer_method_gi_probe_set_cell_size>`.
  2663. .. rst-class:: classref-item-separator
  2664. ----
  2665. .. _class_VisualServer_method_gi_probe_get_dynamic_data:
  2666. .. rst-class:: classref-method
  2667. :ref:`PoolIntArray<class_PoolIntArray>` **gi_probe_get_dynamic_data** **(** :ref:`RID<class_RID>` probe **)** |const|
  2668. Returns the data used by the GI probe.
  2669. .. rst-class:: classref-item-separator
  2670. ----
  2671. .. _class_VisualServer_method_gi_probe_get_dynamic_range:
  2672. .. rst-class:: classref-method
  2673. :ref:`int<class_int>` **gi_probe_get_dynamic_range** **(** :ref:`RID<class_RID>` probe **)** |const|
  2674. Returns the dynamic range set for this GI probe. Equivalent to :ref:`GIProbe.dynamic_range<class_GIProbe_property_dynamic_range>`.
  2675. .. rst-class:: classref-item-separator
  2676. ----
  2677. .. _class_VisualServer_method_gi_probe_get_energy:
  2678. .. rst-class:: classref-method
  2679. :ref:`float<class_float>` **gi_probe_get_energy** **(** :ref:`RID<class_RID>` probe **)** |const|
  2680. Returns the energy multiplier for this GI probe. Equivalent to :ref:`GIProbe.energy<class_GIProbe_property_energy>`.
  2681. .. rst-class:: classref-item-separator
  2682. ----
  2683. .. _class_VisualServer_method_gi_probe_get_normal_bias:
  2684. .. rst-class:: classref-method
  2685. :ref:`float<class_float>` **gi_probe_get_normal_bias** **(** :ref:`RID<class_RID>` probe **)** |const|
  2686. Returns the normal bias for this GI probe. Equivalent to :ref:`GIProbe.normal_bias<class_GIProbe_property_normal_bias>`.
  2687. .. rst-class:: classref-item-separator
  2688. ----
  2689. .. _class_VisualServer_method_gi_probe_get_propagation:
  2690. .. rst-class:: classref-method
  2691. :ref:`float<class_float>` **gi_probe_get_propagation** **(** :ref:`RID<class_RID>` probe **)** |const|
  2692. Returns the propagation value for this GI probe. Equivalent to :ref:`GIProbe.propagation<class_GIProbe_property_propagation>`.
  2693. .. rst-class:: classref-item-separator
  2694. ----
  2695. .. _class_VisualServer_method_gi_probe_get_to_cell_xform:
  2696. .. rst-class:: classref-method
  2697. :ref:`Transform<class_Transform>` **gi_probe_get_to_cell_xform** **(** :ref:`RID<class_RID>` probe **)** |const|
  2698. Returns the Transform set by :ref:`gi_probe_set_to_cell_xform<class_VisualServer_method_gi_probe_set_to_cell_xform>`.
  2699. .. rst-class:: classref-item-separator
  2700. ----
  2701. .. _class_VisualServer_method_gi_probe_is_compressed:
  2702. .. rst-class:: classref-method
  2703. :ref:`bool<class_bool>` **gi_probe_is_compressed** **(** :ref:`RID<class_RID>` probe **)** |const|
  2704. Returns ``true`` if the GI probe data associated with this GI probe is compressed. Equivalent to :ref:`GIProbe.compress<class_GIProbe_property_compress>`.
  2705. .. rst-class:: classref-item-separator
  2706. ----
  2707. .. _class_VisualServer_method_gi_probe_is_interior:
  2708. .. rst-class:: classref-method
  2709. :ref:`bool<class_bool>` **gi_probe_is_interior** **(** :ref:`RID<class_RID>` probe **)** |const|
  2710. Returns ``true`` if the GI probe is set to interior, meaning it does not account for sky light. Equivalent to :ref:`GIProbe.interior<class_GIProbe_property_interior>`.
  2711. .. rst-class:: classref-item-separator
  2712. ----
  2713. .. _class_VisualServer_method_gi_probe_set_bias:
  2714. .. rst-class:: classref-method
  2715. void **gi_probe_set_bias** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` bias **)**
  2716. Sets the bias value to avoid self-occlusion. Equivalent to :ref:`GIProbe.bias<class_GIProbe_property_bias>`.
  2717. .. rst-class:: classref-item-separator
  2718. ----
  2719. .. _class_VisualServer_method_gi_probe_set_bounds:
  2720. .. rst-class:: classref-method
  2721. void **gi_probe_set_bounds** **(** :ref:`RID<class_RID>` probe, :ref:`AABB<class_AABB>` bounds **)**
  2722. Sets the axis-aligned bounding box that covers the extent of the GI probe.
  2723. .. rst-class:: classref-item-separator
  2724. ----
  2725. .. _class_VisualServer_method_gi_probe_set_cell_size:
  2726. .. rst-class:: classref-method
  2727. void **gi_probe_set_cell_size** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` range **)**
  2728. Sets the size of individual cells within the GI probe.
  2729. .. rst-class:: classref-item-separator
  2730. ----
  2731. .. _class_VisualServer_method_gi_probe_set_compress:
  2732. .. rst-class:: classref-method
  2733. void **gi_probe_set_compress** **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**
  2734. Sets the compression setting for the GI probe data. Compressed data will take up less space but may look worse. Equivalent to :ref:`GIProbe.compress<class_GIProbe_property_compress>`.
  2735. .. rst-class:: classref-item-separator
  2736. ----
  2737. .. _class_VisualServer_method_gi_probe_set_dynamic_data:
  2738. .. rst-class:: classref-method
  2739. void **gi_probe_set_dynamic_data** **(** :ref:`RID<class_RID>` probe, :ref:`PoolIntArray<class_PoolIntArray>` data **)**
  2740. Sets the data to be used in the GI probe for lighting calculations. Normally this is created and called internally within the :ref:`GIProbe<class_GIProbe>` node. You should not try to set this yourself.
  2741. .. rst-class:: classref-item-separator
  2742. ----
  2743. .. _class_VisualServer_method_gi_probe_set_dynamic_range:
  2744. .. rst-class:: classref-method
  2745. void **gi_probe_set_dynamic_range** **(** :ref:`RID<class_RID>` probe, :ref:`int<class_int>` range **)**
  2746. Sets the dynamic range of the GI probe. Dynamic range sets the limit for how bright lights can be. A smaller range captures greater detail but limits how bright lights can be. Equivalent to :ref:`GIProbe.dynamic_range<class_GIProbe_property_dynamic_range>`.
  2747. .. rst-class:: classref-item-separator
  2748. ----
  2749. .. _class_VisualServer_method_gi_probe_set_energy:
  2750. .. rst-class:: classref-method
  2751. void **gi_probe_set_energy** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` energy **)**
  2752. Sets the energy multiplier for this GI probe. A higher energy makes the indirect light from the GI probe brighter. Equivalent to :ref:`GIProbe.energy<class_GIProbe_property_energy>`.
  2753. .. rst-class:: classref-item-separator
  2754. ----
  2755. .. _class_VisualServer_method_gi_probe_set_interior:
  2756. .. rst-class:: classref-method
  2757. void **gi_probe_set_interior** **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**
  2758. Sets the interior value of this GI probe. A GI probe set to interior does not include the sky when calculating lighting. Equivalent to :ref:`GIProbe.interior<class_GIProbe_property_interior>`.
  2759. .. rst-class:: classref-item-separator
  2760. ----
  2761. .. _class_VisualServer_method_gi_probe_set_normal_bias:
  2762. .. rst-class:: classref-method
  2763. void **gi_probe_set_normal_bias** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` bias **)**
  2764. Sets the normal bias for this GI probe. Normal bias behaves similar to the other form of bias and may help reduce self-occlusion. Equivalent to :ref:`GIProbe.normal_bias<class_GIProbe_property_normal_bias>`.
  2765. .. rst-class:: classref-item-separator
  2766. ----
  2767. .. _class_VisualServer_method_gi_probe_set_propagation:
  2768. .. rst-class:: classref-method
  2769. void **gi_probe_set_propagation** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` propagation **)**
  2770. Sets the propagation of light within this GI probe. Equivalent to :ref:`GIProbe.propagation<class_GIProbe_property_propagation>`.
  2771. .. rst-class:: classref-item-separator
  2772. ----
  2773. .. _class_VisualServer_method_gi_probe_set_to_cell_xform:
  2774. .. rst-class:: classref-method
  2775. void **gi_probe_set_to_cell_xform** **(** :ref:`RID<class_RID>` probe, :ref:`Transform<class_Transform>` xform **)**
  2776. Sets the to cell :ref:`Transform<class_Transform>` for this GI probe.
  2777. .. rst-class:: classref-item-separator
  2778. ----
  2779. .. _class_VisualServer_method_has_changed:
  2780. .. rst-class:: classref-method
  2781. :ref:`bool<class_bool>` **has_changed** **(** :ref:`ChangedPriority<enum_VisualServer_ChangedPriority>` queried_priority=0 **)** |const|
  2782. Returns ``true`` if changes have been made to the VisualServer's data. :ref:`draw<class_VisualServer_method_draw>` is usually called if this happens.
  2783. As changes are registered as either high or low priority (e.g. dynamic shaders), this function takes an optional argument to query either low or high priority changes, or any changes.
  2784. .. rst-class:: classref-item-separator
  2785. ----
  2786. .. _class_VisualServer_method_has_feature:
  2787. .. rst-class:: classref-method
  2788. :ref:`bool<class_bool>` **has_feature** **(** :ref:`Features<enum_VisualServer_Features>` feature **)** |const|
  2789. Not yet implemented. Always returns ``false``.
  2790. .. rst-class:: classref-item-separator
  2791. ----
  2792. .. _class_VisualServer_method_has_os_feature:
  2793. .. rst-class:: classref-method
  2794. :ref:`bool<class_bool>` **has_os_feature** **(** :ref:`String<class_String>` feature **)** |const|
  2795. Returns ``true`` if the OS supports a certain feature. Features might be ``s3tc``, ``etc``, ``etc2``, ``pvrtc`` and ``skinning_fallback``.
  2796. When rendering with GLES2, returns ``true`` with ``skinning_fallback`` in case the hardware doesn't support the default GPU skinning process.
  2797. .. rst-class:: classref-item-separator
  2798. ----
  2799. .. _class_VisualServer_method_immediate_begin:
  2800. .. rst-class:: classref-method
  2801. void **immediate_begin** **(** :ref:`RID<class_RID>` immediate, :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` primitive, :ref:`RID<class_RID>` texture **)**
  2802. Sets up :ref:`ImmediateGeometry<class_ImmediateGeometry>` internals to prepare for drawing. Equivalent to :ref:`ImmediateGeometry.begin<class_ImmediateGeometry_method_begin>`.
  2803. .. rst-class:: classref-item-separator
  2804. ----
  2805. .. _class_VisualServer_method_immediate_clear:
  2806. .. rst-class:: classref-method
  2807. void **immediate_clear** **(** :ref:`RID<class_RID>` immediate **)**
  2808. Clears everything that was set up between :ref:`immediate_begin<class_VisualServer_method_immediate_begin>` and :ref:`immediate_end<class_VisualServer_method_immediate_end>`. Equivalent to :ref:`ImmediateGeometry.clear<class_ImmediateGeometry_method_clear>`.
  2809. .. rst-class:: classref-item-separator
  2810. ----
  2811. .. _class_VisualServer_method_immediate_color:
  2812. .. rst-class:: classref-method
  2813. void **immediate_color** **(** :ref:`RID<class_RID>` immediate, :ref:`Color<class_Color>` color **)**
  2814. Sets the color to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_color<class_ImmediateGeometry_method_set_color>`.
  2815. .. rst-class:: classref-item-separator
  2816. ----
  2817. .. _class_VisualServer_method_immediate_create:
  2818. .. rst-class:: classref-method
  2819. :ref:`RID<class_RID>` **immediate_create** **(** **)**
  2820. Creates an immediate geometry and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``immediate_*`` VisualServer functions.
  2821. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2822. To place in a scene, attach this immediate geometry to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  2823. .. rst-class:: classref-item-separator
  2824. ----
  2825. .. _class_VisualServer_method_immediate_end:
  2826. .. rst-class:: classref-method
  2827. void **immediate_end** **(** :ref:`RID<class_RID>` immediate **)**
  2828. Ends drawing the :ref:`ImmediateGeometry<class_ImmediateGeometry>` and displays it. Equivalent to :ref:`ImmediateGeometry.end<class_ImmediateGeometry_method_end>`.
  2829. .. rst-class:: classref-item-separator
  2830. ----
  2831. .. _class_VisualServer_method_immediate_get_material:
  2832. .. rst-class:: classref-method
  2833. :ref:`RID<class_RID>` **immediate_get_material** **(** :ref:`RID<class_RID>` immediate **)** |const|
  2834. Returns the material assigned to the :ref:`ImmediateGeometry<class_ImmediateGeometry>`.
  2835. .. rst-class:: classref-item-separator
  2836. ----
  2837. .. _class_VisualServer_method_immediate_normal:
  2838. .. rst-class:: classref-method
  2839. void **immediate_normal** **(** :ref:`RID<class_RID>` immediate, :ref:`Vector3<class_Vector3>` normal **)**
  2840. Sets the normal to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_normal<class_ImmediateGeometry_method_set_normal>`.
  2841. .. rst-class:: classref-item-separator
  2842. ----
  2843. .. _class_VisualServer_method_immediate_set_material:
  2844. .. rst-class:: classref-method
  2845. void **immediate_set_material** **(** :ref:`RID<class_RID>` immediate, :ref:`RID<class_RID>` material **)**
  2846. Sets the material to be used to draw the :ref:`ImmediateGeometry<class_ImmediateGeometry>`.
  2847. .. rst-class:: classref-item-separator
  2848. ----
  2849. .. _class_VisualServer_method_immediate_tangent:
  2850. .. rst-class:: classref-method
  2851. void **immediate_tangent** **(** :ref:`RID<class_RID>` immediate, :ref:`Plane<class_Plane>` tangent **)**
  2852. Sets the tangent to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_tangent<class_ImmediateGeometry_method_set_tangent>`.
  2853. .. rst-class:: classref-item-separator
  2854. ----
  2855. .. _class_VisualServer_method_immediate_uv:
  2856. .. rst-class:: classref-method
  2857. void **immediate_uv** **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` tex_uv **)**
  2858. Sets the UV to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_uv<class_ImmediateGeometry_method_set_uv>`.
  2859. .. rst-class:: classref-item-separator
  2860. ----
  2861. .. _class_VisualServer_method_immediate_uv2:
  2862. .. rst-class:: classref-method
  2863. void **immediate_uv2** **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` tex_uv **)**
  2864. Sets the UV2 to be used with next vertex. Equivalent to :ref:`ImmediateGeometry.set_uv2<class_ImmediateGeometry_method_set_uv2>`.
  2865. .. rst-class:: classref-item-separator
  2866. ----
  2867. .. _class_VisualServer_method_immediate_vertex:
  2868. .. rst-class:: classref-method
  2869. void **immediate_vertex** **(** :ref:`RID<class_RID>` immediate, :ref:`Vector3<class_Vector3>` vertex **)**
  2870. Adds the next vertex using the information provided in advance. Equivalent to :ref:`ImmediateGeometry.add_vertex<class_ImmediateGeometry_method_add_vertex>`.
  2871. .. rst-class:: classref-item-separator
  2872. ----
  2873. .. _class_VisualServer_method_immediate_vertex_2d:
  2874. .. rst-class:: classref-method
  2875. void **immediate_vertex_2d** **(** :ref:`RID<class_RID>` immediate, :ref:`Vector2<class_Vector2>` vertex **)**
  2876. Adds the next vertex using the information provided in advance. This is a helper class that calls :ref:`immediate_vertex<class_VisualServer_method_immediate_vertex>` under the hood. Equivalent to :ref:`ImmediateGeometry.add_vertex<class_ImmediateGeometry_method_add_vertex>`.
  2877. .. rst-class:: classref-item-separator
  2878. ----
  2879. .. _class_VisualServer_method_init:
  2880. .. rst-class:: classref-method
  2881. void **init** **(** **)**
  2882. Initializes the visual server. This function is called internally by platform-dependent code during engine initialization. If called from a running game, it will not do anything.
  2883. .. rst-class:: classref-item-separator
  2884. ----
  2885. .. _class_VisualServer_method_instance_attach_object_instance_id:
  2886. .. rst-class:: classref-method
  2887. void **instance_attach_object_instance_id** **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` id **)**
  2888. Attaches a unique Object ID to instance. Object ID must be attached to instance for proper culling with :ref:`instances_cull_aabb<class_VisualServer_method_instances_cull_aabb>`, :ref:`instances_cull_convex<class_VisualServer_method_instances_cull_convex>`, and :ref:`instances_cull_ray<class_VisualServer_method_instances_cull_ray>`.
  2889. .. rst-class:: classref-item-separator
  2890. ----
  2891. .. _class_VisualServer_method_instance_attach_skeleton:
  2892. .. rst-class:: classref-method
  2893. void **instance_attach_skeleton** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` skeleton **)**
  2894. Attaches a skeleton to an instance. Removes the previous skeleton from the instance.
  2895. .. rst-class:: classref-item-separator
  2896. ----
  2897. .. _class_VisualServer_method_instance_create:
  2898. .. rst-class:: classref-method
  2899. :ref:`RID<class_RID>` **instance_create** **(** **)**
  2900. Creates a visual instance and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``instance_*`` VisualServer functions.
  2901. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2902. An instance is a way of placing a 3D object in the scenario. Objects like particles, meshes, and reflection probes need to be associated with an instance to be visible in the scenario using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>`.
  2903. .. rst-class:: classref-item-separator
  2904. ----
  2905. .. _class_VisualServer_method_instance_create2:
  2906. .. rst-class:: classref-method
  2907. :ref:`RID<class_RID>` **instance_create2** **(** :ref:`RID<class_RID>` base, :ref:`RID<class_RID>` scenario **)**
  2908. Creates a visual instance, adds it to the VisualServer, and sets both base and scenario. It can be accessed with the RID that is returned. This RID will be used in all ``instance_*`` VisualServer functions.
  2909. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  2910. .. rst-class:: classref-item-separator
  2911. ----
  2912. .. _class_VisualServer_method_instance_geometry_set_as_instance_lod:
  2913. .. rst-class:: classref-method
  2914. void **instance_geometry_set_as_instance_lod** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` as_lod_of_instance **)**
  2915. Not implemented in Godot 3.x.
  2916. .. rst-class:: classref-item-separator
  2917. ----
  2918. .. _class_VisualServer_method_instance_geometry_set_cast_shadows_setting:
  2919. .. rst-class:: classref-method
  2920. void **instance_geometry_set_cast_shadows_setting** **(** :ref:`RID<class_RID>` instance, :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>` shadow_casting_setting **)**
  2921. Sets the shadow casting setting to one of :ref:`ShadowCastingSetting<enum_VisualServer_ShadowCastingSetting>`. Equivalent to :ref:`GeometryInstance.cast_shadow<class_GeometryInstance_property_cast_shadow>`.
  2922. .. rst-class:: classref-item-separator
  2923. ----
  2924. .. _class_VisualServer_method_instance_geometry_set_draw_range:
  2925. .. rst-class:: classref-method
  2926. void **instance_geometry_set_draw_range** **(** :ref:`RID<class_RID>` instance, :ref:`float<class_float>` min, :ref:`float<class_float>` max, :ref:`float<class_float>` min_margin, :ref:`float<class_float>` max_margin **)**
  2927. Not implemented in Godot 3.x.
  2928. .. rst-class:: classref-item-separator
  2929. ----
  2930. .. _class_VisualServer_method_instance_geometry_set_flag:
  2931. .. rst-class:: classref-method
  2932. void **instance_geometry_set_flag** **(** :ref:`RID<class_RID>` instance, :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` flag, :ref:`bool<class_bool>` enabled **)**
  2933. Sets the flag for a given :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>`. See :ref:`InstanceFlags<enum_VisualServer_InstanceFlags>` for more details.
  2934. .. rst-class:: classref-item-separator
  2935. ----
  2936. .. _class_VisualServer_method_instance_geometry_set_material_overlay:
  2937. .. rst-class:: classref-method
  2938. void **instance_geometry_set_material_overlay** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` material **)**
  2939. Sets a material that will be rendered for all surfaces on top of active materials for the mesh associated with this instance. Equivalent to :ref:`GeometryInstance.material_overlay<class_GeometryInstance_property_material_overlay>`.
  2940. .. rst-class:: classref-item-separator
  2941. ----
  2942. .. _class_VisualServer_method_instance_geometry_set_material_override:
  2943. .. rst-class:: classref-method
  2944. void **instance_geometry_set_material_override** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` material **)**
  2945. Sets a material that will override the material for all surfaces on the mesh associated with this instance. Equivalent to :ref:`GeometryInstance.material_override<class_GeometryInstance_property_material_override>`.
  2946. .. rst-class:: classref-item-separator
  2947. ----
  2948. .. _class_VisualServer_method_instance_set_base:
  2949. .. rst-class:: classref-method
  2950. void **instance_set_base** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` base **)**
  2951. Sets the base of the instance. A base can be any of the 3D objects that are created in the VisualServer that can be displayed. For example, any of the light types, mesh, multimesh, immediate geometry, particle system, reflection probe, lightmap capture, and the GI probe are all types that can be set as the base of an instance in order to be displayed in the scenario.
  2952. .. rst-class:: classref-item-separator
  2953. ----
  2954. .. _class_VisualServer_method_instance_set_blend_shape_weight:
  2955. .. rst-class:: classref-method
  2956. void **instance_set_blend_shape_weight** **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` shape, :ref:`float<class_float>` weight **)**
  2957. Sets the weight for a given blend shape associated with this instance.
  2958. .. rst-class:: classref-item-separator
  2959. ----
  2960. .. _class_VisualServer_method_instance_set_custom_aabb:
  2961. .. rst-class:: classref-method
  2962. void **instance_set_custom_aabb** **(** :ref:`RID<class_RID>` instance, :ref:`AABB<class_AABB>` aabb **)**
  2963. Sets a custom AABB to use when culling objects from the view frustum. Equivalent to :ref:`GeometryInstance.set_custom_aabb<class_GeometryInstance_method_set_custom_aabb>`.
  2964. .. rst-class:: classref-item-separator
  2965. ----
  2966. .. _class_VisualServer_method_instance_set_exterior:
  2967. .. rst-class:: classref-method
  2968. void **instance_set_exterior** **(** :ref:`RID<class_RID>` instance, :ref:`bool<class_bool>` enabled **)**
  2969. Function not implemented in Godot 3.x.
  2970. .. rst-class:: classref-item-separator
  2971. ----
  2972. .. _class_VisualServer_method_instance_set_extra_visibility_margin:
  2973. .. rst-class:: classref-method
  2974. void **instance_set_extra_visibility_margin** **(** :ref:`RID<class_RID>` instance, :ref:`float<class_float>` margin **)**
  2975. Sets a margin to increase the size of the AABB when culling objects from the view frustum. This allows you to avoid culling objects that fall outside the view frustum. Equivalent to :ref:`GeometryInstance.extra_cull_margin<class_GeometryInstance_property_extra_cull_margin>`.
  2976. .. rst-class:: classref-item-separator
  2977. ----
  2978. .. _class_VisualServer_method_instance_set_layer_mask:
  2979. .. rst-class:: classref-method
  2980. void **instance_set_layer_mask** **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` mask **)**
  2981. Sets the render layers that this instance will be drawn to. Equivalent to :ref:`VisualInstance.layers<class_VisualInstance_property_layers>`.
  2982. .. rst-class:: classref-item-separator
  2983. ----
  2984. .. _class_VisualServer_method_instance_set_scenario:
  2985. .. rst-class:: classref-method
  2986. void **instance_set_scenario** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` scenario **)**
  2987. Sets the scenario that the instance is in. The scenario is the 3D world that the objects will be displayed in.
  2988. .. rst-class:: classref-item-separator
  2989. ----
  2990. .. _class_VisualServer_method_instance_set_surface_material:
  2991. .. rst-class:: classref-method
  2992. void **instance_set_surface_material** **(** :ref:`RID<class_RID>` instance, :ref:`int<class_int>` surface, :ref:`RID<class_RID>` material **)**
  2993. Sets the material of a specific surface. Equivalent to :ref:`MeshInstance.set_surface_material<class_MeshInstance_method_set_surface_material>`.
  2994. .. rst-class:: classref-item-separator
  2995. ----
  2996. .. _class_VisualServer_method_instance_set_transform:
  2997. .. rst-class:: classref-method
  2998. void **instance_set_transform** **(** :ref:`RID<class_RID>` instance, :ref:`Transform<class_Transform>` transform **)**
  2999. Sets the world space transform of the instance. Equivalent to :ref:`Spatial.transform<class_Spatial_property_transform>`.
  3000. .. rst-class:: classref-item-separator
  3001. ----
  3002. .. _class_VisualServer_method_instance_set_use_lightmap:
  3003. .. rst-class:: classref-method
  3004. void **instance_set_use_lightmap** **(** :ref:`RID<class_RID>` instance, :ref:`RID<class_RID>` lightmap_instance, :ref:`RID<class_RID>` lightmap, :ref:`int<class_int>` lightmap_slice=-1, :ref:`Rect2<class_Rect2>` lightmap_uv_rect=Rect2( 0, 0, 1, 1 ) **)**
  3005. Sets the lightmap to use with this instance.
  3006. .. rst-class:: classref-item-separator
  3007. ----
  3008. .. _class_VisualServer_method_instance_set_visible:
  3009. .. rst-class:: classref-method
  3010. void **instance_set_visible** **(** :ref:`RID<class_RID>` instance, :ref:`bool<class_bool>` visible **)**
  3011. Sets whether an instance is drawn or not. Equivalent to :ref:`Spatial.visible<class_Spatial_property_visible>`.
  3012. .. rst-class:: classref-item-separator
  3013. ----
  3014. .. _class_VisualServer_method_instances_cull_aabb:
  3015. .. rst-class:: classref-method
  3016. :ref:`Array<class_Array>` **instances_cull_aabb** **(** :ref:`AABB<class_AABB>` aabb, :ref:`RID<class_RID>` scenario **)** |const|
  3017. Returns an array of object IDs intersecting with the provided AABB. Only visual 3D nodes are considered, such as :ref:`MeshInstance<class_MeshInstance>` or :ref:`DirectionalLight<class_DirectionalLight>`. Use :ref:`@GDScript.instance_from_id<class_@GDScript_method_instance_from_id>` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World<class_World>` you want to query. This forces an update for all resources queued to update.
  3018. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
  3019. .. rst-class:: classref-item-separator
  3020. ----
  3021. .. _class_VisualServer_method_instances_cull_convex:
  3022. .. rst-class:: classref-method
  3023. :ref:`Array<class_Array>` **instances_cull_convex** **(** :ref:`Array<class_Array>` convex, :ref:`RID<class_RID>` scenario **)** |const|
  3024. Returns an array of object IDs intersecting with the provided convex shape. Only visual 3D nodes are considered, such as :ref:`MeshInstance<class_MeshInstance>` or :ref:`DirectionalLight<class_DirectionalLight>`. Use :ref:`@GDScript.instance_from_id<class_@GDScript_method_instance_from_id>` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World<class_World>` you want to query. This forces an update for all resources queued to update.
  3025. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
  3026. .. rst-class:: classref-item-separator
  3027. ----
  3028. .. _class_VisualServer_method_instances_cull_ray:
  3029. .. rst-class:: classref-method
  3030. :ref:`Array<class_Array>` **instances_cull_ray** **(** :ref:`Vector3<class_Vector3>` from, :ref:`Vector3<class_Vector3>` to, :ref:`RID<class_RID>` scenario **)** |const|
  3031. Returns an array of object IDs intersecting with the provided 3D ray. Only visual 3D nodes are considered, such as :ref:`MeshInstance<class_MeshInstance>` or :ref:`DirectionalLight<class_DirectionalLight>`. Use :ref:`@GDScript.instance_from_id<class_@GDScript_method_instance_from_id>` to obtain the actual nodes. A scenario RID must be provided, which is available in the :ref:`World<class_World>` you want to query. This forces an update for all resources queued to update.
  3032. \ **Warning:** This function is primarily intended for editor usage. For in-game use cases, prefer physics collision.
  3033. .. rst-class:: classref-item-separator
  3034. ----
  3035. .. _class_VisualServer_method_light_directional_set_blend_splits:
  3036. .. rst-class:: classref-method
  3037. void **light_directional_set_blend_splits** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enable **)**
  3038. If ``true``, this directional light will blend between shadow map splits resulting in a smoother transition between them. Equivalent to :ref:`DirectionalLight.directional_shadow_blend_splits<class_DirectionalLight_property_directional_shadow_blend_splits>`.
  3039. .. rst-class:: classref-item-separator
  3040. ----
  3041. .. _class_VisualServer_method_light_directional_set_shadow_depth_range_mode:
  3042. .. rst-class:: classref-method
  3043. void **light_directional_set_shadow_depth_range_mode** **(** :ref:`RID<class_RID>` light, :ref:`LightDirectionalShadowDepthRangeMode<enum_VisualServer_LightDirectionalShadowDepthRangeMode>` range_mode **)**
  3044. Sets the shadow depth range mode for this directional light. Equivalent to :ref:`DirectionalLight.directional_shadow_depth_range<class_DirectionalLight_property_directional_shadow_depth_range>`. See :ref:`LightDirectionalShadowDepthRangeMode<enum_VisualServer_LightDirectionalShadowDepthRangeMode>` for options.
  3045. .. rst-class:: classref-item-separator
  3046. ----
  3047. .. _class_VisualServer_method_light_directional_set_shadow_mode:
  3048. .. rst-class:: classref-method
  3049. void **light_directional_set_shadow_mode** **(** :ref:`RID<class_RID>` light, :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` mode **)**
  3050. Sets the shadow mode for this directional light. Equivalent to :ref:`DirectionalLight.directional_shadow_mode<class_DirectionalLight_property_directional_shadow_mode>`. See :ref:`LightDirectionalShadowMode<enum_VisualServer_LightDirectionalShadowMode>` for options.
  3051. .. rst-class:: classref-item-separator
  3052. ----
  3053. .. _class_VisualServer_method_light_omni_set_shadow_detail:
  3054. .. rst-class:: classref-method
  3055. void **light_omni_set_shadow_detail** **(** :ref:`RID<class_RID>` light, :ref:`LightOmniShadowDetail<enum_VisualServer_LightOmniShadowDetail>` detail **)**
  3056. Sets whether to use vertical or horizontal detail for this omni light. This can be used to alleviate artifacts in the shadow map. Equivalent to :ref:`OmniLight.omni_shadow_detail<class_OmniLight_property_omni_shadow_detail>`.
  3057. .. rst-class:: classref-item-separator
  3058. ----
  3059. .. _class_VisualServer_method_light_omni_set_shadow_mode:
  3060. .. rst-class:: classref-method
  3061. void **light_omni_set_shadow_mode** **(** :ref:`RID<class_RID>` light, :ref:`LightOmniShadowMode<enum_VisualServer_LightOmniShadowMode>` mode **)**
  3062. Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual paraboloid is faster but may suffer from artifacts. Equivalent to :ref:`OmniLight.omni_shadow_mode<class_OmniLight_property_omni_shadow_mode>`.
  3063. .. rst-class:: classref-item-separator
  3064. ----
  3065. .. _class_VisualServer_method_light_set_bake_mode:
  3066. .. rst-class:: classref-method
  3067. void **light_set_bake_mode** **(** :ref:`RID<class_RID>` light, :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` bake_mode **)**
  3068. Sets the bake mode for this light, see :ref:`LightBakeMode<enum_VisualServer_LightBakeMode>` for options. The bake mode affects how the light will be baked in :ref:`BakedLightmap<class_BakedLightmap>`\ s and :ref:`GIProbe<class_GIProbe>`\ s.
  3069. .. rst-class:: classref-item-separator
  3070. ----
  3071. .. _class_VisualServer_method_light_set_color:
  3072. .. rst-class:: classref-method
  3073. void **light_set_color** **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)**
  3074. Sets the color of the light. Equivalent to :ref:`Light.light_color<class_Light_property_light_color>`.
  3075. .. rst-class:: classref-item-separator
  3076. ----
  3077. .. _class_VisualServer_method_light_set_cull_mask:
  3078. .. rst-class:: classref-method
  3079. void **light_set_cull_mask** **(** :ref:`RID<class_RID>` light, :ref:`int<class_int>` mask **)**
  3080. Sets the cull mask for this Light. Lights only affect objects in the selected layers. Equivalent to :ref:`Light.light_cull_mask<class_Light_property_light_cull_mask>`.
  3081. .. rst-class:: classref-item-separator
  3082. ----
  3083. .. _class_VisualServer_method_light_set_negative:
  3084. .. rst-class:: classref-method
  3085. void **light_set_negative** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enable **)**
  3086. If ``true``, light will subtract light instead of adding light. Equivalent to :ref:`Light.light_negative<class_Light_property_light_negative>`.
  3087. .. rst-class:: classref-item-separator
  3088. ----
  3089. .. _class_VisualServer_method_light_set_param:
  3090. .. rst-class:: classref-method
  3091. void **light_set_param** **(** :ref:`RID<class_RID>` light, :ref:`LightParam<enum_VisualServer_LightParam>` param, :ref:`float<class_float>` value **)**
  3092. Sets the specified light parameter. See :ref:`LightParam<enum_VisualServer_LightParam>` for options. Equivalent to :ref:`Light.set_param<class_Light_method_set_param>`.
  3093. .. rst-class:: classref-item-separator
  3094. ----
  3095. .. _class_VisualServer_method_light_set_projector:
  3096. .. rst-class:: classref-method
  3097. void **light_set_projector** **(** :ref:`RID<class_RID>` light, :ref:`RID<class_RID>` texture **)**
  3098. Not implemented in Godot 3.x.
  3099. .. rst-class:: classref-item-separator
  3100. ----
  3101. .. _class_VisualServer_method_light_set_reverse_cull_face_mode:
  3102. .. rst-class:: classref-method
  3103. void **light_set_reverse_cull_face_mode** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**
  3104. If ``true``, reverses the backface culling of the mesh. This can be useful when you have a flat mesh that has a light behind it. If you need to cast a shadow on both sides of the mesh, set the mesh to use double sided shadows with :ref:`instance_geometry_set_cast_shadows_setting<class_VisualServer_method_instance_geometry_set_cast_shadows_setting>`. Equivalent to :ref:`Light.shadow_reverse_cull_face<class_Light_property_shadow_reverse_cull_face>`.
  3105. .. rst-class:: classref-item-separator
  3106. ----
  3107. .. _class_VisualServer_method_light_set_shadow:
  3108. .. rst-class:: classref-method
  3109. void **light_set_shadow** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**
  3110. If ``true``, light will cast shadows. Equivalent to :ref:`Light.shadow_enabled<class_Light_property_shadow_enabled>`.
  3111. .. rst-class:: classref-item-separator
  3112. ----
  3113. .. _class_VisualServer_method_light_set_shadow_color:
  3114. .. rst-class:: classref-method
  3115. void **light_set_shadow_color** **(** :ref:`RID<class_RID>` light, :ref:`Color<class_Color>` color **)**
  3116. Sets the color of the shadow cast by the light. Equivalent to :ref:`Light.shadow_color<class_Light_property_shadow_color>`.
  3117. .. rst-class:: classref-item-separator
  3118. ----
  3119. .. _class_VisualServer_method_light_set_use_gi:
  3120. .. rst-class:: classref-method
  3121. void **light_set_use_gi** **(** :ref:`RID<class_RID>` light, :ref:`bool<class_bool>` enabled **)**
  3122. Sets whether GI probes capture light information from this light. *Deprecated method.* Use :ref:`light_set_bake_mode<class_VisualServer_method_light_set_bake_mode>` instead. This method is only kept for compatibility reasons and calls :ref:`light_set_bake_mode<class_VisualServer_method_light_set_bake_mode>` internally, setting the bake mode to :ref:`LIGHT_BAKE_DISABLED<class_VisualServer_constant_LIGHT_BAKE_DISABLED>` or :ref:`LIGHT_BAKE_INDIRECT<class_VisualServer_constant_LIGHT_BAKE_INDIRECT>` depending on the given parameter.
  3123. .. rst-class:: classref-item-separator
  3124. ----
  3125. .. _class_VisualServer_method_lightmap_capture_create:
  3126. .. rst-class:: classref-method
  3127. :ref:`RID<class_RID>` **lightmap_capture_create** **(** **)**
  3128. Creates a lightmap capture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``lightmap_capture_*`` VisualServer functions.
  3129. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3130. To place in a scene, attach this lightmap capture to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3131. .. rst-class:: classref-item-separator
  3132. ----
  3133. .. _class_VisualServer_method_lightmap_capture_get_bounds:
  3134. .. rst-class:: classref-method
  3135. :ref:`AABB<class_AABB>` **lightmap_capture_get_bounds** **(** :ref:`RID<class_RID>` capture **)** |const|
  3136. Returns the size of the lightmap capture area.
  3137. .. rst-class:: classref-item-separator
  3138. ----
  3139. .. _class_VisualServer_method_lightmap_capture_get_energy:
  3140. .. rst-class:: classref-method
  3141. :ref:`float<class_float>` **lightmap_capture_get_energy** **(** :ref:`RID<class_RID>` capture **)** |const|
  3142. Returns the energy multiplier used by the lightmap capture.
  3143. .. rst-class:: classref-item-separator
  3144. ----
  3145. .. _class_VisualServer_method_lightmap_capture_get_octree:
  3146. .. rst-class:: classref-method
  3147. :ref:`PoolByteArray<class_PoolByteArray>` **lightmap_capture_get_octree** **(** :ref:`RID<class_RID>` capture **)** |const|
  3148. Returns the octree used by the lightmap capture.
  3149. .. rst-class:: classref-item-separator
  3150. ----
  3151. .. _class_VisualServer_method_lightmap_capture_get_octree_cell_subdiv:
  3152. .. rst-class:: classref-method
  3153. :ref:`int<class_int>` **lightmap_capture_get_octree_cell_subdiv** **(** :ref:`RID<class_RID>` capture **)** |const|
  3154. Returns the cell subdivision amount used by this lightmap capture's octree.
  3155. .. rst-class:: classref-item-separator
  3156. ----
  3157. .. _class_VisualServer_method_lightmap_capture_get_octree_cell_transform:
  3158. .. rst-class:: classref-method
  3159. :ref:`Transform<class_Transform>` **lightmap_capture_get_octree_cell_transform** **(** :ref:`RID<class_RID>` capture **)** |const|
  3160. Returns the cell transform for this lightmap capture's octree.
  3161. .. rst-class:: classref-item-separator
  3162. ----
  3163. .. _class_VisualServer_method_lightmap_capture_is_interior:
  3164. .. rst-class:: classref-method
  3165. :ref:`bool<class_bool>` **lightmap_capture_is_interior** **(** :ref:`RID<class_RID>` capture **)** |const|
  3166. Returns ``true`` if capture is in "interior" mode.
  3167. .. rst-class:: classref-item-separator
  3168. ----
  3169. .. _class_VisualServer_method_lightmap_capture_set_bounds:
  3170. .. rst-class:: classref-method
  3171. void **lightmap_capture_set_bounds** **(** :ref:`RID<class_RID>` capture, :ref:`AABB<class_AABB>` bounds **)**
  3172. Sets the size of the area covered by the lightmap capture. Equivalent to :ref:`BakedLightmapData.bounds<class_BakedLightmapData_property_bounds>`.
  3173. .. rst-class:: classref-item-separator
  3174. ----
  3175. .. _class_VisualServer_method_lightmap_capture_set_energy:
  3176. .. rst-class:: classref-method
  3177. void **lightmap_capture_set_energy** **(** :ref:`RID<class_RID>` capture, :ref:`float<class_float>` energy **)**
  3178. Sets the energy multiplier for this lightmap capture. Equivalent to :ref:`BakedLightmapData.energy<class_BakedLightmapData_property_energy>`.
  3179. .. rst-class:: classref-item-separator
  3180. ----
  3181. .. _class_VisualServer_method_lightmap_capture_set_interior:
  3182. .. rst-class:: classref-method
  3183. void **lightmap_capture_set_interior** **(** :ref:`RID<class_RID>` capture, :ref:`bool<class_bool>` interior **)**
  3184. Sets the "interior" mode for this lightmap capture. Equivalent to :ref:`BakedLightmapData.interior<class_BakedLightmapData_property_interior>`.
  3185. .. rst-class:: classref-item-separator
  3186. ----
  3187. .. _class_VisualServer_method_lightmap_capture_set_octree:
  3188. .. rst-class:: classref-method
  3189. void **lightmap_capture_set_octree** **(** :ref:`RID<class_RID>` capture, :ref:`PoolByteArray<class_PoolByteArray>` octree **)**
  3190. Sets the octree to be used by this lightmap capture. This function is normally used by the :ref:`BakedLightmap<class_BakedLightmap>` node. Equivalent to :ref:`BakedLightmapData.octree<class_BakedLightmapData_property_octree>`.
  3191. .. rst-class:: classref-item-separator
  3192. ----
  3193. .. _class_VisualServer_method_lightmap_capture_set_octree_cell_subdiv:
  3194. .. rst-class:: classref-method
  3195. void **lightmap_capture_set_octree_cell_subdiv** **(** :ref:`RID<class_RID>` capture, :ref:`int<class_int>` subdiv **)**
  3196. Sets the subdivision level of this lightmap capture's octree. Equivalent to :ref:`BakedLightmapData.cell_subdiv<class_BakedLightmapData_property_cell_subdiv>`.
  3197. .. rst-class:: classref-item-separator
  3198. ----
  3199. .. _class_VisualServer_method_lightmap_capture_set_octree_cell_transform:
  3200. .. rst-class:: classref-method
  3201. void **lightmap_capture_set_octree_cell_transform** **(** :ref:`RID<class_RID>` capture, :ref:`Transform<class_Transform>` xform **)**
  3202. Sets the octree cell transform for this lightmap capture's octree. Equivalent to :ref:`BakedLightmapData.cell_space_transform<class_BakedLightmapData_property_cell_space_transform>`.
  3203. .. rst-class:: classref-item-separator
  3204. ----
  3205. .. _class_VisualServer_method_make_sphere_mesh:
  3206. .. rst-class:: classref-method
  3207. :ref:`RID<class_RID>` **make_sphere_mesh** **(** :ref:`int<class_int>` latitudes, :ref:`int<class_int>` longitudes, :ref:`float<class_float>` radius **)**
  3208. Returns a mesh of a sphere with the given amount of horizontal and vertical subdivisions.
  3209. .. rst-class:: classref-item-separator
  3210. ----
  3211. .. _class_VisualServer_method_material_create:
  3212. .. rst-class:: classref-method
  3213. :ref:`RID<class_RID>` **material_create** **(** **)**
  3214. Creates an empty material and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``material_*`` VisualServer functions.
  3215. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3216. .. rst-class:: classref-item-separator
  3217. ----
  3218. .. _class_VisualServer_method_material_get_param:
  3219. .. rst-class:: classref-method
  3220. :ref:`Variant<class_Variant>` **material_get_param** **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter **)** |const|
  3221. Returns the value of a certain material's parameter.
  3222. .. rst-class:: classref-item-separator
  3223. ----
  3224. .. _class_VisualServer_method_material_get_param_default:
  3225. .. rst-class:: classref-method
  3226. :ref:`Variant<class_Variant>` **material_get_param_default** **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter **)** |const|
  3227. Returns the default value for the param if available. Returns ``null`` otherwise.
  3228. .. rst-class:: classref-item-separator
  3229. ----
  3230. .. _class_VisualServer_method_material_get_shader:
  3231. .. rst-class:: classref-method
  3232. :ref:`RID<class_RID>` **material_get_shader** **(** :ref:`RID<class_RID>` shader_material **)** |const|
  3233. Returns the shader of a certain material's shader. Returns an empty RID if the material doesn't have a shader.
  3234. .. rst-class:: classref-item-separator
  3235. ----
  3236. .. _class_VisualServer_method_material_set_line_width:
  3237. .. rst-class:: classref-method
  3238. void **material_set_line_width** **(** :ref:`RID<class_RID>` material, :ref:`float<class_float>` width **)**
  3239. Sets a material's line width.
  3240. .. rst-class:: classref-item-separator
  3241. ----
  3242. .. _class_VisualServer_method_material_set_next_pass:
  3243. .. rst-class:: classref-method
  3244. void **material_set_next_pass** **(** :ref:`RID<class_RID>` material, :ref:`RID<class_RID>` next_material **)**
  3245. Sets an object's next material.
  3246. .. rst-class:: classref-item-separator
  3247. ----
  3248. .. _class_VisualServer_method_material_set_param:
  3249. .. rst-class:: classref-method
  3250. void **material_set_param** **(** :ref:`RID<class_RID>` material, :ref:`String<class_String>` parameter, :ref:`Variant<class_Variant>` value **)**
  3251. Sets a material's parameter.
  3252. .. rst-class:: classref-item-separator
  3253. ----
  3254. .. _class_VisualServer_method_material_set_render_priority:
  3255. .. rst-class:: classref-method
  3256. void **material_set_render_priority** **(** :ref:`RID<class_RID>` material, :ref:`int<class_int>` priority **)**
  3257. Sets a material's render priority.
  3258. .. rst-class:: classref-item-separator
  3259. ----
  3260. .. _class_VisualServer_method_material_set_shader:
  3261. .. rst-class:: classref-method
  3262. void **material_set_shader** **(** :ref:`RID<class_RID>` shader_material, :ref:`RID<class_RID>` shader **)**
  3263. Sets a shader material's shader.
  3264. .. rst-class:: classref-item-separator
  3265. ----
  3266. .. _class_VisualServer_method_mesh_add_surface_from_arrays:
  3267. .. rst-class:: classref-method
  3268. void **mesh_add_surface_from_arrays** **(** :ref:`RID<class_RID>` mesh, :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` primitive, :ref:`Array<class_Array>` arrays, :ref:`Array<class_Array>` blend_shapes=[ ], :ref:`int<class_int>` compress_format=2194432 **)**
  3269. Adds a surface generated from the Arrays to a mesh. See :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` constants for types.
  3270. .. rst-class:: classref-item-separator
  3271. ----
  3272. .. _class_VisualServer_method_mesh_clear:
  3273. .. rst-class:: classref-method
  3274. void **mesh_clear** **(** :ref:`RID<class_RID>` mesh **)**
  3275. Removes all surfaces from a mesh.
  3276. .. rst-class:: classref-item-separator
  3277. ----
  3278. .. _class_VisualServer_method_mesh_create:
  3279. .. rst-class:: classref-method
  3280. :ref:`RID<class_RID>` **mesh_create** **(** **)**
  3281. Creates a new mesh and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``mesh_*`` VisualServer functions.
  3282. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3283. To place in a scene, attach this mesh to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3284. .. rst-class:: classref-item-separator
  3285. ----
  3286. .. _class_VisualServer_method_mesh_get_blend_shape_count:
  3287. .. rst-class:: classref-method
  3288. :ref:`int<class_int>` **mesh_get_blend_shape_count** **(** :ref:`RID<class_RID>` mesh **)** |const|
  3289. Returns a mesh's blend shape count.
  3290. .. rst-class:: classref-item-separator
  3291. ----
  3292. .. _class_VisualServer_method_mesh_get_blend_shape_mode:
  3293. .. rst-class:: classref-method
  3294. :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` **mesh_get_blend_shape_mode** **(** :ref:`RID<class_RID>` mesh **)** |const|
  3295. Returns a mesh's blend shape mode.
  3296. .. rst-class:: classref-item-separator
  3297. ----
  3298. .. _class_VisualServer_method_mesh_get_custom_aabb:
  3299. .. rst-class:: classref-method
  3300. :ref:`AABB<class_AABB>` **mesh_get_custom_aabb** **(** :ref:`RID<class_RID>` mesh **)** |const|
  3301. Returns a mesh's custom aabb.
  3302. .. rst-class:: classref-item-separator
  3303. ----
  3304. .. _class_VisualServer_method_mesh_get_surface_count:
  3305. .. rst-class:: classref-method
  3306. :ref:`int<class_int>` **mesh_get_surface_count** **(** :ref:`RID<class_RID>` mesh **)** |const|
  3307. Returns a mesh's number of surfaces.
  3308. .. rst-class:: classref-item-separator
  3309. ----
  3310. .. _class_VisualServer_method_mesh_remove_surface:
  3311. .. rst-class:: classref-method
  3312. void **mesh_remove_surface** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` index **)**
  3313. Removes a mesh's surface.
  3314. .. rst-class:: classref-item-separator
  3315. ----
  3316. .. _class_VisualServer_method_mesh_set_blend_shape_count:
  3317. .. rst-class:: classref-method
  3318. void **mesh_set_blend_shape_count** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` amount **)**
  3319. Sets a mesh's blend shape count.
  3320. .. rst-class:: classref-item-separator
  3321. ----
  3322. .. _class_VisualServer_method_mesh_set_blend_shape_mode:
  3323. .. rst-class:: classref-method
  3324. void **mesh_set_blend_shape_mode** **(** :ref:`RID<class_RID>` mesh, :ref:`BlendShapeMode<enum_VisualServer_BlendShapeMode>` mode **)**
  3325. Sets a mesh's blend shape mode.
  3326. .. rst-class:: classref-item-separator
  3327. ----
  3328. .. _class_VisualServer_method_mesh_set_custom_aabb:
  3329. .. rst-class:: classref-method
  3330. void **mesh_set_custom_aabb** **(** :ref:`RID<class_RID>` mesh, :ref:`AABB<class_AABB>` aabb **)**
  3331. Sets a mesh's custom aabb.
  3332. .. rst-class:: classref-item-separator
  3333. ----
  3334. .. _class_VisualServer_method_mesh_surface_get_aabb:
  3335. .. rst-class:: classref-method
  3336. :ref:`AABB<class_AABB>` **mesh_surface_get_aabb** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3337. Returns a mesh's surface's aabb.
  3338. .. rst-class:: classref-item-separator
  3339. ----
  3340. .. _class_VisualServer_method_mesh_surface_get_array:
  3341. .. rst-class:: classref-method
  3342. :ref:`PoolByteArray<class_PoolByteArray>` **mesh_surface_get_array** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3343. Returns a mesh's surface's vertex buffer.
  3344. .. rst-class:: classref-item-separator
  3345. ----
  3346. .. _class_VisualServer_method_mesh_surface_get_array_index_len:
  3347. .. rst-class:: classref-method
  3348. :ref:`int<class_int>` **mesh_surface_get_array_index_len** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3349. Returns a mesh's surface's amount of indices.
  3350. .. rst-class:: classref-item-separator
  3351. ----
  3352. .. _class_VisualServer_method_mesh_surface_get_array_len:
  3353. .. rst-class:: classref-method
  3354. :ref:`int<class_int>` **mesh_surface_get_array_len** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3355. Returns a mesh's surface's amount of vertices.
  3356. .. rst-class:: classref-item-separator
  3357. ----
  3358. .. _class_VisualServer_method_mesh_surface_get_arrays:
  3359. .. rst-class:: classref-method
  3360. :ref:`Array<class_Array>` **mesh_surface_get_arrays** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3361. Returns a mesh's surface's buffer arrays.
  3362. .. rst-class:: classref-item-separator
  3363. ----
  3364. .. _class_VisualServer_method_mesh_surface_get_blend_shape_arrays:
  3365. .. rst-class:: classref-method
  3366. :ref:`Array<class_Array>` **mesh_surface_get_blend_shape_arrays** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3367. Returns a mesh's surface's arrays for blend shapes.
  3368. .. rst-class:: classref-item-separator
  3369. ----
  3370. .. _class_VisualServer_method_mesh_surface_get_format:
  3371. .. rst-class:: classref-method
  3372. :ref:`int<class_int>` **mesh_surface_get_format** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3373. Returns the format of a mesh's surface.
  3374. .. rst-class:: classref-item-separator
  3375. ----
  3376. .. _class_VisualServer_method_mesh_surface_get_format_offset:
  3377. .. rst-class:: classref-method
  3378. :ref:`int<class_int>` **mesh_surface_get_format_offset** **(** :ref:`int<class_int>` format, :ref:`int<class_int>` vertex_len, :ref:`int<class_int>` index_len, :ref:`int<class_int>` array_index **)** |const|
  3379. Function is unused in Godot 3.x.
  3380. .. rst-class:: classref-item-separator
  3381. ----
  3382. .. _class_VisualServer_method_mesh_surface_get_format_stride:
  3383. .. rst-class:: classref-method
  3384. :ref:`int<class_int>` **mesh_surface_get_format_stride** **(** :ref:`int<class_int>` format, :ref:`int<class_int>` vertex_len, :ref:`int<class_int>` index_len, :ref:`int<class_int>` array_index **)** |const|
  3385. .. container:: contribute
  3386. There is currently no description for this method. Please help us by :ref:`contributing one <doc_updating_the_class_reference>`!
  3387. .. rst-class:: classref-item-separator
  3388. ----
  3389. .. _class_VisualServer_method_mesh_surface_get_index_array:
  3390. .. rst-class:: classref-method
  3391. :ref:`PoolByteArray<class_PoolByteArray>` **mesh_surface_get_index_array** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3392. Returns a mesh's surface's index buffer.
  3393. .. rst-class:: classref-item-separator
  3394. ----
  3395. .. _class_VisualServer_method_mesh_surface_get_material:
  3396. .. rst-class:: classref-method
  3397. :ref:`RID<class_RID>` **mesh_surface_get_material** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3398. Returns a mesh's surface's material.
  3399. .. rst-class:: classref-item-separator
  3400. ----
  3401. .. _class_VisualServer_method_mesh_surface_get_primitive_type:
  3402. .. rst-class:: classref-method
  3403. :ref:`PrimitiveType<enum_VisualServer_PrimitiveType>` **mesh_surface_get_primitive_type** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3404. Returns the primitive type of a mesh's surface.
  3405. .. rst-class:: classref-item-separator
  3406. ----
  3407. .. _class_VisualServer_method_mesh_surface_get_skeleton_aabb:
  3408. .. rst-class:: classref-method
  3409. :ref:`Array<class_Array>` **mesh_surface_get_skeleton_aabb** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface **)** |const|
  3410. Returns the aabb of a mesh's surface's skeleton.
  3411. .. rst-class:: classref-item-separator
  3412. ----
  3413. .. _class_VisualServer_method_mesh_surface_set_material:
  3414. .. rst-class:: classref-method
  3415. void **mesh_surface_set_material** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface, :ref:`RID<class_RID>` material **)**
  3416. Sets a mesh's surface's material.
  3417. .. rst-class:: classref-item-separator
  3418. ----
  3419. .. _class_VisualServer_method_mesh_surface_update_region:
  3420. .. rst-class:: classref-method
  3421. void **mesh_surface_update_region** **(** :ref:`RID<class_RID>` mesh, :ref:`int<class_int>` surface, :ref:`int<class_int>` offset, :ref:`PoolByteArray<class_PoolByteArray>` data **)**
  3422. Updates a specific region of a vertex buffer for the specified surface. Warning: this function alters the vertex buffer directly with no safety mechanisms, you can easily corrupt your mesh.
  3423. .. rst-class:: classref-item-separator
  3424. ----
  3425. .. _class_VisualServer_method_multimesh_allocate:
  3426. .. rst-class:: classref-method
  3427. void **multimesh_allocate** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` instances, :ref:`MultimeshTransformFormat<enum_VisualServer_MultimeshTransformFormat>` transform_format, :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>` color_format, :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` custom_data_format=0 **)**
  3428. Allocates space for the multimesh data. Format parameters determine how the data will be stored by OpenGL. See :ref:`MultimeshTransformFormat<enum_VisualServer_MultimeshTransformFormat>`, :ref:`MultimeshColorFormat<enum_VisualServer_MultimeshColorFormat>`, and :ref:`MultimeshCustomDataFormat<enum_VisualServer_MultimeshCustomDataFormat>` for usage. Equivalent to :ref:`MultiMesh.instance_count<class_MultiMesh_property_instance_count>`.
  3429. .. rst-class:: classref-item-separator
  3430. ----
  3431. .. _class_VisualServer_method_multimesh_create:
  3432. .. rst-class:: classref-method
  3433. :ref:`RID<class_RID>` **multimesh_create** **(** **)**
  3434. Creates a new multimesh on the VisualServer and returns an :ref:`RID<class_RID>` handle. This RID will be used in all ``multimesh_*`` VisualServer functions.
  3435. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3436. To place in a scene, attach this multimesh to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3437. .. rst-class:: classref-item-separator
  3438. ----
  3439. .. _class_VisualServer_method_multimesh_get_aabb:
  3440. .. rst-class:: classref-method
  3441. :ref:`AABB<class_AABB>` **multimesh_get_aabb** **(** :ref:`RID<class_RID>` multimesh **)** |const|
  3442. Calculates and returns the axis-aligned bounding box that encloses all instances within the multimesh.
  3443. .. rst-class:: classref-item-separator
  3444. ----
  3445. .. _class_VisualServer_method_multimesh_get_instance_count:
  3446. .. rst-class:: classref-method
  3447. :ref:`int<class_int>` **multimesh_get_instance_count** **(** :ref:`RID<class_RID>` multimesh **)** |const|
  3448. Returns the number of instances allocated for this multimesh.
  3449. .. rst-class:: classref-item-separator
  3450. ----
  3451. .. _class_VisualServer_method_multimesh_get_mesh:
  3452. .. rst-class:: classref-method
  3453. :ref:`RID<class_RID>` **multimesh_get_mesh** **(** :ref:`RID<class_RID>` multimesh **)** |const|
  3454. Returns the RID of the mesh that will be used in drawing this multimesh.
  3455. .. rst-class:: classref-item-separator
  3456. ----
  3457. .. _class_VisualServer_method_multimesh_get_visible_instances:
  3458. .. rst-class:: classref-method
  3459. :ref:`int<class_int>` **multimesh_get_visible_instances** **(** :ref:`RID<class_RID>` multimesh **)** |const|
  3460. Returns the number of visible instances for this multimesh.
  3461. .. rst-class:: classref-item-separator
  3462. ----
  3463. .. _class_VisualServer_method_multimesh_instance_get_color:
  3464. .. rst-class:: classref-method
  3465. :ref:`Color<class_Color>` **multimesh_instance_get_color** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const|
  3466. Returns the color by which the specified instance will be modulated.
  3467. .. rst-class:: classref-item-separator
  3468. ----
  3469. .. _class_VisualServer_method_multimesh_instance_get_custom_data:
  3470. .. rst-class:: classref-method
  3471. :ref:`Color<class_Color>` **multimesh_instance_get_custom_data** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const|
  3472. Returns the custom data associated with the specified instance.
  3473. .. rst-class:: classref-item-separator
  3474. ----
  3475. .. _class_VisualServer_method_multimesh_instance_get_transform:
  3476. .. rst-class:: classref-method
  3477. :ref:`Transform<class_Transform>` **multimesh_instance_get_transform** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const|
  3478. Returns the :ref:`Transform<class_Transform>` of the specified instance.
  3479. .. rst-class:: classref-item-separator
  3480. ----
  3481. .. _class_VisualServer_method_multimesh_instance_get_transform_2d:
  3482. .. rst-class:: classref-method
  3483. :ref:`Transform2D<class_Transform2D>` **multimesh_instance_get_transform_2d** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index **)** |const|
  3484. Returns the :ref:`Transform2D<class_Transform2D>` of the specified instance. For use when the multimesh is set to use 2D transforms.
  3485. .. rst-class:: classref-item-separator
  3486. ----
  3487. .. _class_VisualServer_method_multimesh_instance_set_color:
  3488. .. rst-class:: classref-method
  3489. void **multimesh_instance_set_color** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Color<class_Color>` color **)**
  3490. Sets the color by which this instance will be modulated. Equivalent to :ref:`MultiMesh.set_instance_color<class_MultiMesh_method_set_instance_color>`.
  3491. .. rst-class:: classref-item-separator
  3492. ----
  3493. .. _class_VisualServer_method_multimesh_instance_set_custom_data:
  3494. .. rst-class:: classref-method
  3495. void **multimesh_instance_set_custom_data** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Color<class_Color>` custom_data **)**
  3496. Sets the custom data for this instance. Custom data is passed as a :ref:`Color<class_Color>`, but is interpreted as a ``vec4`` in the shader. Equivalent to :ref:`MultiMesh.set_instance_custom_data<class_MultiMesh_method_set_instance_custom_data>`.
  3497. .. rst-class:: classref-item-separator
  3498. ----
  3499. .. _class_VisualServer_method_multimesh_instance_set_transform:
  3500. .. rst-class:: classref-method
  3501. void **multimesh_instance_set_transform** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Transform<class_Transform>` transform **)**
  3502. Sets the :ref:`Transform<class_Transform>` for this instance. Equivalent to :ref:`MultiMesh.set_instance_transform<class_MultiMesh_method_set_instance_transform>`.
  3503. .. rst-class:: classref-item-separator
  3504. ----
  3505. .. _class_VisualServer_method_multimesh_instance_set_transform_2d:
  3506. .. rst-class:: classref-method
  3507. void **multimesh_instance_set_transform_2d** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` index, :ref:`Transform2D<class_Transform2D>` transform **)**
  3508. Sets the :ref:`Transform2D<class_Transform2D>` for this instance. For use when multimesh is used in 2D. Equivalent to :ref:`MultiMesh.set_instance_transform_2d<class_MultiMesh_method_set_instance_transform_2d>`.
  3509. .. rst-class:: classref-item-separator
  3510. ----
  3511. .. _class_VisualServer_method_multimesh_set_as_bulk_array:
  3512. .. rst-class:: classref-method
  3513. void **multimesh_set_as_bulk_array** **(** :ref:`RID<class_RID>` multimesh, :ref:`PoolRealArray<class_PoolRealArray>` array **)**
  3514. Sets all data related to the instances in one go. This is especially useful when loading the data from disk or preparing the data from GDNative.
  3515. All data is packed in one large float array. An array may look like this: Transform for instance 1, color data for instance 1, custom data for instance 1, transform for instance 2, color data for instance 2, etc.
  3516. \ :ref:`Transform<class_Transform>` is stored as 12 floats, :ref:`Transform2D<class_Transform2D>` is stored as 8 floats, ``COLOR_8BIT`` / ``CUSTOM_DATA_8BIT`` is stored as 1 float (4 bytes as is) and ``COLOR_FLOAT`` / ``CUSTOM_DATA_FLOAT`` is stored as 4 floats.
  3517. .. rst-class:: classref-item-separator
  3518. ----
  3519. .. _class_VisualServer_method_multimesh_set_mesh:
  3520. .. rst-class:: classref-method
  3521. void **multimesh_set_mesh** **(** :ref:`RID<class_RID>` multimesh, :ref:`RID<class_RID>` mesh **)**
  3522. Sets the mesh to be drawn by the multimesh. Equivalent to :ref:`MultiMesh.mesh<class_MultiMesh_property_mesh>`.
  3523. .. rst-class:: classref-item-separator
  3524. ----
  3525. .. _class_VisualServer_method_multimesh_set_visible_instances:
  3526. .. rst-class:: classref-method
  3527. void **multimesh_set_visible_instances** **(** :ref:`RID<class_RID>` multimesh, :ref:`int<class_int>` visible **)**
  3528. Sets the number of instances visible at a given time. If -1, all instances that have been allocated are drawn. Equivalent to :ref:`MultiMesh.visible_instance_count<class_MultiMesh_property_visible_instance_count>`.
  3529. .. rst-class:: classref-item-separator
  3530. ----
  3531. .. _class_VisualServer_method_omni_light_create:
  3532. .. rst-class:: classref-method
  3533. :ref:`RID<class_RID>` **omni_light_create** **(** **)**
  3534. Creates a new omni light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions.
  3535. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3536. To place in a scene, attach this omni light to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3537. .. rst-class:: classref-item-separator
  3538. ----
  3539. .. _class_VisualServer_method_particles_create:
  3540. .. rst-class:: classref-method
  3541. :ref:`RID<class_RID>` **particles_create** **(** **)**
  3542. Creates a particle system and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``particles_*`` VisualServer functions.
  3543. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3544. To place in a scene, attach these particles to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3545. .. rst-class:: classref-item-separator
  3546. ----
  3547. .. _class_VisualServer_method_particles_get_current_aabb:
  3548. .. rst-class:: classref-method
  3549. :ref:`AABB<class_AABB>` **particles_get_current_aabb** **(** :ref:`RID<class_RID>` particles **)**
  3550. Calculates and returns the axis-aligned bounding box that contains all the particles. Equivalent to :ref:`Particles.capture_aabb<class_Particles_method_capture_aabb>`.
  3551. .. rst-class:: classref-item-separator
  3552. ----
  3553. .. _class_VisualServer_method_particles_get_emitting:
  3554. .. rst-class:: classref-method
  3555. :ref:`bool<class_bool>` **particles_get_emitting** **(** :ref:`RID<class_RID>` particles **)**
  3556. Returns ``true`` if particles are currently set to emitting.
  3557. .. rst-class:: classref-item-separator
  3558. ----
  3559. .. _class_VisualServer_method_particles_is_inactive:
  3560. .. rst-class:: classref-method
  3561. :ref:`bool<class_bool>` **particles_is_inactive** **(** :ref:`RID<class_RID>` particles **)**
  3562. Returns ``true`` if particles are not emitting and particles are set to inactive.
  3563. .. rst-class:: classref-item-separator
  3564. ----
  3565. .. _class_VisualServer_method_particles_request_process:
  3566. .. rst-class:: classref-method
  3567. void **particles_request_process** **(** :ref:`RID<class_RID>` particles **)**
  3568. Add particle system to list of particle systems that need to be updated. Update will take place on the next frame, or on the next call to :ref:`instances_cull_aabb<class_VisualServer_method_instances_cull_aabb>`, :ref:`instances_cull_convex<class_VisualServer_method_instances_cull_convex>`, or :ref:`instances_cull_ray<class_VisualServer_method_instances_cull_ray>`.
  3569. .. rst-class:: classref-item-separator
  3570. ----
  3571. .. _class_VisualServer_method_particles_restart:
  3572. .. rst-class:: classref-method
  3573. void **particles_restart** **(** :ref:`RID<class_RID>` particles **)**
  3574. Reset the particles on the next update. Equivalent to :ref:`Particles.restart<class_Particles_method_restart>`.
  3575. .. rst-class:: classref-item-separator
  3576. ----
  3577. .. _class_VisualServer_method_particles_set_amount:
  3578. .. rst-class:: classref-method
  3579. void **particles_set_amount** **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` amount **)**
  3580. Sets the number of particles to be drawn and allocates the memory for them. Equivalent to :ref:`Particles.amount<class_Particles_property_amount>`.
  3581. .. rst-class:: classref-item-separator
  3582. ----
  3583. .. _class_VisualServer_method_particles_set_custom_aabb:
  3584. .. rst-class:: classref-method
  3585. void **particles_set_custom_aabb** **(** :ref:`RID<class_RID>` particles, :ref:`AABB<class_AABB>` aabb **)**
  3586. Sets a custom axis-aligned bounding box for the particle system. Equivalent to :ref:`Particles.visibility_aabb<class_Particles_property_visibility_aabb>`.
  3587. .. rst-class:: classref-item-separator
  3588. ----
  3589. .. _class_VisualServer_method_particles_set_draw_order:
  3590. .. rst-class:: classref-method
  3591. void **particles_set_draw_order** **(** :ref:`RID<class_RID>` particles, :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` order **)**
  3592. Sets the draw order of the particles to one of the named enums from :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>`. See :ref:`ParticlesDrawOrder<enum_VisualServer_ParticlesDrawOrder>` for options. Equivalent to :ref:`Particles.draw_order<class_Particles_property_draw_order>`.
  3593. .. rst-class:: classref-item-separator
  3594. ----
  3595. .. _class_VisualServer_method_particles_set_draw_pass_mesh:
  3596. .. rst-class:: classref-method
  3597. void **particles_set_draw_pass_mesh** **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` pass, :ref:`RID<class_RID>` mesh **)**
  3598. Sets the mesh to be used for the specified draw pass. Equivalent to :ref:`Particles.draw_pass_1<class_Particles_property_draw_pass_1>`, :ref:`Particles.draw_pass_2<class_Particles_property_draw_pass_2>`, :ref:`Particles.draw_pass_3<class_Particles_property_draw_pass_3>`, and :ref:`Particles.draw_pass_4<class_Particles_property_draw_pass_4>`.
  3599. .. rst-class:: classref-item-separator
  3600. ----
  3601. .. _class_VisualServer_method_particles_set_draw_passes:
  3602. .. rst-class:: classref-method
  3603. void **particles_set_draw_passes** **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` count **)**
  3604. Sets the number of draw passes to use. Equivalent to :ref:`Particles.draw_passes<class_Particles_property_draw_passes>`.
  3605. .. rst-class:: classref-item-separator
  3606. ----
  3607. .. _class_VisualServer_method_particles_set_emission_transform:
  3608. .. rst-class:: classref-method
  3609. void **particles_set_emission_transform** **(** :ref:`RID<class_RID>` particles, :ref:`Transform<class_Transform>` transform **)**
  3610. Sets the :ref:`Transform<class_Transform>` that will be used by the particles when they first emit.
  3611. .. rst-class:: classref-item-separator
  3612. ----
  3613. .. _class_VisualServer_method_particles_set_emitting:
  3614. .. rst-class:: classref-method
  3615. void **particles_set_emitting** **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` emitting **)**
  3616. If ``true``, particles will emit over time. Setting to false does not reset the particles, but only stops their emission. Equivalent to :ref:`Particles.emitting<class_Particles_property_emitting>`.
  3617. .. rst-class:: classref-item-separator
  3618. ----
  3619. .. _class_VisualServer_method_particles_set_explosiveness_ratio:
  3620. .. rst-class:: classref-method
  3621. void **particles_set_explosiveness_ratio** **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` ratio **)**
  3622. Sets the explosiveness ratio. Equivalent to :ref:`Particles.explosiveness<class_Particles_property_explosiveness>`.
  3623. .. rst-class:: classref-item-separator
  3624. ----
  3625. .. _class_VisualServer_method_particles_set_fixed_fps:
  3626. .. rst-class:: classref-method
  3627. void **particles_set_fixed_fps** **(** :ref:`RID<class_RID>` particles, :ref:`int<class_int>` fps **)**
  3628. Sets the frame rate that the particle system rendering will be fixed to. Equivalent to :ref:`Particles.fixed_fps<class_Particles_property_fixed_fps>`.
  3629. .. rst-class:: classref-item-separator
  3630. ----
  3631. .. _class_VisualServer_method_particles_set_fractional_delta:
  3632. .. rst-class:: classref-method
  3633. void **particles_set_fractional_delta** **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` enable **)**
  3634. If ``true``, uses fractional delta which smooths the movement of the particles. Equivalent to :ref:`Particles.fract_delta<class_Particles_property_fract_delta>`.
  3635. .. rst-class:: classref-item-separator
  3636. ----
  3637. .. _class_VisualServer_method_particles_set_lifetime:
  3638. .. rst-class:: classref-method
  3639. void **particles_set_lifetime** **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` lifetime **)**
  3640. Sets the lifetime of each particle in the system. Equivalent to :ref:`Particles.lifetime<class_Particles_property_lifetime>`.
  3641. .. rst-class:: classref-item-separator
  3642. ----
  3643. .. _class_VisualServer_method_particles_set_one_shot:
  3644. .. rst-class:: classref-method
  3645. void **particles_set_one_shot** **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` one_shot **)**
  3646. If ``true``, particles will emit once and then stop. Equivalent to :ref:`Particles.one_shot<class_Particles_property_one_shot>`.
  3647. .. rst-class:: classref-item-separator
  3648. ----
  3649. .. _class_VisualServer_method_particles_set_pre_process_time:
  3650. .. rst-class:: classref-method
  3651. void **particles_set_pre_process_time** **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` time **)**
  3652. Sets the preprocess time for the particles' animation. This lets you delay starting an animation until after the particles have begun emitting. Equivalent to :ref:`Particles.preprocess<class_Particles_property_preprocess>`.
  3653. .. rst-class:: classref-item-separator
  3654. ----
  3655. .. _class_VisualServer_method_particles_set_process_material:
  3656. .. rst-class:: classref-method
  3657. void **particles_set_process_material** **(** :ref:`RID<class_RID>` particles, :ref:`RID<class_RID>` material **)**
  3658. Sets the material for processing the particles.
  3659. \ **Note:** This is not the material used to draw the materials. Equivalent to :ref:`Particles.process_material<class_Particles_property_process_material>`.
  3660. .. rst-class:: classref-item-separator
  3661. ----
  3662. .. _class_VisualServer_method_particles_set_randomness_ratio:
  3663. .. rst-class:: classref-method
  3664. void **particles_set_randomness_ratio** **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` ratio **)**
  3665. Sets the emission randomness ratio. This randomizes the emission of particles within their phase. Equivalent to :ref:`Particles.randomness<class_Particles_property_randomness>`.
  3666. .. rst-class:: classref-item-separator
  3667. ----
  3668. .. _class_VisualServer_method_particles_set_speed_scale:
  3669. .. rst-class:: classref-method
  3670. void **particles_set_speed_scale** **(** :ref:`RID<class_RID>` particles, :ref:`float<class_float>` scale **)**
  3671. Sets the speed scale of the particle system. Equivalent to :ref:`Particles.speed_scale<class_Particles_property_speed_scale>`.
  3672. .. rst-class:: classref-item-separator
  3673. ----
  3674. .. _class_VisualServer_method_particles_set_use_local_coordinates:
  3675. .. rst-class:: classref-method
  3676. void **particles_set_use_local_coordinates** **(** :ref:`RID<class_RID>` particles, :ref:`bool<class_bool>` enable **)**
  3677. If ``true``, particles use local coordinates. If ``false`` they use global coordinates. Equivalent to :ref:`Particles.local_coords<class_Particles_property_local_coords>`.
  3678. .. rst-class:: classref-item-separator
  3679. ----
  3680. .. _class_VisualServer_method_reflection_probe_create:
  3681. .. rst-class:: classref-method
  3682. :ref:`RID<class_RID>` **reflection_probe_create** **(** **)**
  3683. Creates a reflection probe and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``reflection_probe_*`` VisualServer functions.
  3684. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3685. To place in a scene, attach this reflection probe to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3686. .. rst-class:: classref-item-separator
  3687. ----
  3688. .. _class_VisualServer_method_reflection_probe_set_as_interior:
  3689. .. rst-class:: classref-method
  3690. void **reflection_probe_set_as_interior** **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**
  3691. If ``true``, reflections will ignore sky contribution. Equivalent to :ref:`ReflectionProbe.interior_enable<class_ReflectionProbe_property_interior_enable>`.
  3692. .. rst-class:: classref-item-separator
  3693. ----
  3694. .. _class_VisualServer_method_reflection_probe_set_cull_mask:
  3695. .. rst-class:: classref-method
  3696. void **reflection_probe_set_cull_mask** **(** :ref:`RID<class_RID>` probe, :ref:`int<class_int>` layers **)**
  3697. Sets the render cull mask for this reflection probe. Only instances with a matching cull mask will be rendered by this probe. Equivalent to :ref:`ReflectionProbe.cull_mask<class_ReflectionProbe_property_cull_mask>`.
  3698. .. rst-class:: classref-item-separator
  3699. ----
  3700. .. _class_VisualServer_method_reflection_probe_set_enable_box_projection:
  3701. .. rst-class:: classref-method
  3702. void **reflection_probe_set_enable_box_projection** **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**
  3703. If ``true``, uses box projection. This can make reflections look more correct in certain situations. Equivalent to :ref:`ReflectionProbe.box_projection<class_ReflectionProbe_property_box_projection>`.
  3704. .. rst-class:: classref-item-separator
  3705. ----
  3706. .. _class_VisualServer_method_reflection_probe_set_enable_shadows:
  3707. .. rst-class:: classref-method
  3708. void **reflection_probe_set_enable_shadows** **(** :ref:`RID<class_RID>` probe, :ref:`bool<class_bool>` enable **)**
  3709. If ``true``, computes shadows in the reflection probe. This makes the reflection much slower to compute. Equivalent to :ref:`ReflectionProbe.enable_shadows<class_ReflectionProbe_property_enable_shadows>`.
  3710. .. rst-class:: classref-item-separator
  3711. ----
  3712. .. _class_VisualServer_method_reflection_probe_set_extents:
  3713. .. rst-class:: classref-method
  3714. void **reflection_probe_set_extents** **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` extents **)**
  3715. Sets the size of the area that the reflection probe will capture. Equivalent to :ref:`ReflectionProbe.extents<class_ReflectionProbe_property_extents>`.
  3716. .. rst-class:: classref-item-separator
  3717. ----
  3718. .. _class_VisualServer_method_reflection_probe_set_intensity:
  3719. .. rst-class:: classref-method
  3720. void **reflection_probe_set_intensity** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` intensity **)**
  3721. Sets the intensity of the reflection probe. Intensity modulates the strength of the reflection. Equivalent to :ref:`ReflectionProbe.intensity<class_ReflectionProbe_property_intensity>`.
  3722. .. rst-class:: classref-item-separator
  3723. ----
  3724. .. _class_VisualServer_method_reflection_probe_set_interior_ambient:
  3725. .. rst-class:: classref-method
  3726. void **reflection_probe_set_interior_ambient** **(** :ref:`RID<class_RID>` probe, :ref:`Color<class_Color>` color **)**
  3727. Sets the ambient light color for this reflection probe when set to interior mode. Equivalent to :ref:`ReflectionProbe.interior_ambient_color<class_ReflectionProbe_property_interior_ambient_color>`.
  3728. .. rst-class:: classref-item-separator
  3729. ----
  3730. .. _class_VisualServer_method_reflection_probe_set_interior_ambient_energy:
  3731. .. rst-class:: classref-method
  3732. void **reflection_probe_set_interior_ambient_energy** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` energy **)**
  3733. Sets the energy multiplier for this reflection probes ambient light contribution when set to interior mode. Equivalent to :ref:`ReflectionProbe.interior_ambient_energy<class_ReflectionProbe_property_interior_ambient_energy>`.
  3734. .. rst-class:: classref-item-separator
  3735. ----
  3736. .. _class_VisualServer_method_reflection_probe_set_interior_ambient_probe_contribution:
  3737. .. rst-class:: classref-method
  3738. void **reflection_probe_set_interior_ambient_probe_contribution** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` contrib **)**
  3739. Sets the contribution value for how much the reflection affects the ambient light for this reflection probe when set to interior mode. Useful so that ambient light matches the color of the room. Equivalent to :ref:`ReflectionProbe.interior_ambient_contrib<class_ReflectionProbe_property_interior_ambient_contrib>`.
  3740. .. rst-class:: classref-item-separator
  3741. ----
  3742. .. _class_VisualServer_method_reflection_probe_set_max_distance:
  3743. .. rst-class:: classref-method
  3744. void **reflection_probe_set_max_distance** **(** :ref:`RID<class_RID>` probe, :ref:`float<class_float>` distance **)**
  3745. Sets the max distance away from the probe an object can be before it is culled. Equivalent to :ref:`ReflectionProbe.max_distance<class_ReflectionProbe_property_max_distance>`.
  3746. .. rst-class:: classref-item-separator
  3747. ----
  3748. .. _class_VisualServer_method_reflection_probe_set_origin_offset:
  3749. .. rst-class:: classref-method
  3750. void **reflection_probe_set_origin_offset** **(** :ref:`RID<class_RID>` probe, :ref:`Vector3<class_Vector3>` offset **)**
  3751. Sets the origin offset to be used when this reflection probe is in box project mode. Equivalent to :ref:`ReflectionProbe.origin_offset<class_ReflectionProbe_property_origin_offset>`.
  3752. .. rst-class:: classref-item-separator
  3753. ----
  3754. .. _class_VisualServer_method_reflection_probe_set_update_mode:
  3755. .. rst-class:: classref-method
  3756. void **reflection_probe_set_update_mode** **(** :ref:`RID<class_RID>` probe, :ref:`ReflectionProbeUpdateMode<enum_VisualServer_ReflectionProbeUpdateMode>` mode **)**
  3757. Sets how often the reflection probe updates. Can either be once or every frame. See :ref:`ReflectionProbeUpdateMode<enum_VisualServer_ReflectionProbeUpdateMode>` for options.
  3758. .. rst-class:: classref-item-separator
  3759. ----
  3760. .. _class_VisualServer_method_request_frame_drawn_callback:
  3761. .. rst-class:: classref-method
  3762. void **request_frame_drawn_callback** **(** :ref:`Object<class_Object>` where, :ref:`String<class_String>` method, :ref:`Variant<class_Variant>` userdata **)**
  3763. Schedules a callback to the corresponding named ``method`` on ``where`` after a frame has been drawn.
  3764. The callback method must use only 1 argument which will be called with ``userdata``.
  3765. .. rst-class:: classref-item-separator
  3766. ----
  3767. .. _class_VisualServer_method_scenario_create:
  3768. .. rst-class:: classref-method
  3769. :ref:`RID<class_RID>` **scenario_create** **(** **)**
  3770. Creates a scenario and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``scenario_*`` VisualServer functions.
  3771. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3772. The scenario is the 3D world that all the visual instances exist in.
  3773. .. rst-class:: classref-item-separator
  3774. ----
  3775. .. _class_VisualServer_method_scenario_set_debug:
  3776. .. rst-class:: classref-method
  3777. void **scenario_set_debug** **(** :ref:`RID<class_RID>` scenario, :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` debug_mode **)**
  3778. Sets the :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` for this scenario. See :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>` for options.
  3779. .. rst-class:: classref-item-separator
  3780. ----
  3781. .. _class_VisualServer_method_scenario_set_environment:
  3782. .. rst-class:: classref-method
  3783. void **scenario_set_environment** **(** :ref:`RID<class_RID>` scenario, :ref:`RID<class_RID>` environment **)**
  3784. Sets the environment that will be used with this scenario.
  3785. .. rst-class:: classref-item-separator
  3786. ----
  3787. .. _class_VisualServer_method_scenario_set_fallback_environment:
  3788. .. rst-class:: classref-method
  3789. void **scenario_set_fallback_environment** **(** :ref:`RID<class_RID>` scenario, :ref:`RID<class_RID>` environment **)**
  3790. Sets the fallback environment to be used by this scenario. The fallback environment is used if no environment is set. Internally, this is used by the editor to provide a default environment.
  3791. .. rst-class:: classref-item-separator
  3792. ----
  3793. .. _class_VisualServer_method_scenario_set_reflection_atlas_size:
  3794. .. rst-class:: classref-method
  3795. void **scenario_set_reflection_atlas_size** **(** :ref:`RID<class_RID>` scenario, :ref:`int<class_int>` size, :ref:`int<class_int>` subdiv **)**
  3796. Sets the size of the reflection atlas shared by all reflection probes in this scenario.
  3797. .. rst-class:: classref-item-separator
  3798. ----
  3799. .. _class_VisualServer_method_set_boot_image:
  3800. .. rst-class:: classref-method
  3801. void **set_boot_image** **(** :ref:`Image<class_Image>` image, :ref:`Color<class_Color>` color, :ref:`bool<class_bool>` scale, :ref:`bool<class_bool>` use_filter=true **)**
  3802. Sets a boot image. The color defines the background color. If ``scale`` is ``true``, the image will be scaled to fit the screen size. If ``use_filter`` is ``true``, the image will be scaled with linear interpolation. If ``use_filter`` is ``false``, the image will be scaled with nearest-neighbor interpolation.
  3803. .. rst-class:: classref-item-separator
  3804. ----
  3805. .. _class_VisualServer_method_set_debug_generate_wireframes:
  3806. .. rst-class:: classref-method
  3807. void **set_debug_generate_wireframes** **(** :ref:`bool<class_bool>` generate **)**
  3808. If ``true``, the engine will generate wireframes for use with the wireframe debug mode.
  3809. .. rst-class:: classref-item-separator
  3810. ----
  3811. .. _class_VisualServer_method_set_default_clear_color:
  3812. .. rst-class:: classref-method
  3813. void **set_default_clear_color** **(** :ref:`Color<class_Color>` color **)**
  3814. Sets the default clear color which is used when a specific clear color has not been selected.
  3815. .. rst-class:: classref-item-separator
  3816. ----
  3817. .. _class_VisualServer_method_set_shader_async_hidden_forbidden:
  3818. .. rst-class:: classref-method
  3819. void **set_shader_async_hidden_forbidden** **(** :ref:`bool<class_bool>` forbidden **)**
  3820. If asynchronous shader compilation is enabled, this controls whether :ref:`SpatialMaterial.ASYNC_MODE_HIDDEN<class_SpatialMaterial_constant_ASYNC_MODE_HIDDEN>` is obeyed.
  3821. For instance, you may want to enable this temporarily before taking a screenshot. This ensures everything is visible even if shaders with async mode *hidden* are not ready yet.
  3822. Reflection probes use this internally to ensure they capture everything regardless the shaders are ready or not.
  3823. .. rst-class:: classref-item-separator
  3824. ----
  3825. .. _class_VisualServer_method_set_shader_time_scale:
  3826. .. rst-class:: classref-method
  3827. void **set_shader_time_scale** **(** :ref:`float<class_float>` scale **)**
  3828. Sets the scale to apply to the passage of time for the shaders' ``TIME`` builtin.
  3829. The default value is ``1.0``, which means ``TIME`` will count the real time as it goes by, without narrowing or stretching it.
  3830. .. rst-class:: classref-item-separator
  3831. ----
  3832. .. _class_VisualServer_method_set_use_occlusion_culling:
  3833. .. rst-class:: classref-method
  3834. void **set_use_occlusion_culling** **(** :ref:`bool<class_bool>` enable **)**
  3835. Enables or disables occlusion culling.
  3836. .. rst-class:: classref-item-separator
  3837. ----
  3838. .. _class_VisualServer_method_shader_create:
  3839. .. rst-class:: classref-method
  3840. :ref:`RID<class_RID>` **shader_create** **(** **)**
  3841. Creates an empty shader and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``shader_*`` VisualServer functions.
  3842. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3843. .. rst-class:: classref-item-separator
  3844. ----
  3845. .. _class_VisualServer_method_shader_get_code:
  3846. .. rst-class:: classref-method
  3847. :ref:`String<class_String>` **shader_get_code** **(** :ref:`RID<class_RID>` shader **)** |const|
  3848. Returns a shader's code.
  3849. .. rst-class:: classref-item-separator
  3850. ----
  3851. .. _class_VisualServer_method_shader_get_default_texture_param:
  3852. .. rst-class:: classref-method
  3853. :ref:`RID<class_RID>` **shader_get_default_texture_param** **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` name **)** |const|
  3854. Returns a default texture from a shader searched by name.
  3855. .. rst-class:: classref-item-separator
  3856. ----
  3857. .. _class_VisualServer_method_shader_get_param_list:
  3858. .. rst-class:: classref-method
  3859. :ref:`Array<class_Array>` **shader_get_param_list** **(** :ref:`RID<class_RID>` shader **)** |const|
  3860. Returns the parameters of a shader.
  3861. .. rst-class:: classref-item-separator
  3862. ----
  3863. .. _class_VisualServer_method_shader_set_code:
  3864. .. rst-class:: classref-method
  3865. void **shader_set_code** **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` code **)**
  3866. Sets a shader's code.
  3867. .. rst-class:: classref-item-separator
  3868. ----
  3869. .. _class_VisualServer_method_shader_set_default_texture_param:
  3870. .. rst-class:: classref-method
  3871. void **shader_set_default_texture_param** **(** :ref:`RID<class_RID>` shader, :ref:`String<class_String>` name, :ref:`RID<class_RID>` texture **)**
  3872. Sets a shader's default texture. Overwrites the texture given by name.
  3873. .. rst-class:: classref-item-separator
  3874. ----
  3875. .. _class_VisualServer_method_skeleton_allocate:
  3876. .. rst-class:: classref-method
  3877. void **skeleton_allocate** **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bones, :ref:`bool<class_bool>` is_2d_skeleton=false **)**
  3878. Allocates the GPU buffers for this skeleton.
  3879. .. rst-class:: classref-item-separator
  3880. ----
  3881. .. _class_VisualServer_method_skeleton_bone_get_transform:
  3882. .. rst-class:: classref-method
  3883. :ref:`Transform<class_Transform>` **skeleton_bone_get_transform** **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone **)** |const|
  3884. Returns the :ref:`Transform<class_Transform>` set for a specific bone of this skeleton.
  3885. .. rst-class:: classref-item-separator
  3886. ----
  3887. .. _class_VisualServer_method_skeleton_bone_get_transform_2d:
  3888. .. rst-class:: classref-method
  3889. :ref:`Transform2D<class_Transform2D>` **skeleton_bone_get_transform_2d** **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone **)** |const|
  3890. Returns the :ref:`Transform2D<class_Transform2D>` set for a specific bone of this skeleton.
  3891. .. rst-class:: classref-item-separator
  3892. ----
  3893. .. _class_VisualServer_method_skeleton_bone_set_transform:
  3894. .. rst-class:: classref-method
  3895. void **skeleton_bone_set_transform** **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone, :ref:`Transform<class_Transform>` transform **)**
  3896. Sets the :ref:`Transform<class_Transform>` for a specific bone of this skeleton.
  3897. .. rst-class:: classref-item-separator
  3898. ----
  3899. .. _class_VisualServer_method_skeleton_bone_set_transform_2d:
  3900. .. rst-class:: classref-method
  3901. void **skeleton_bone_set_transform_2d** **(** :ref:`RID<class_RID>` skeleton, :ref:`int<class_int>` bone, :ref:`Transform2D<class_Transform2D>` transform **)**
  3902. Sets the :ref:`Transform2D<class_Transform2D>` for a specific bone of this skeleton.
  3903. .. rst-class:: classref-item-separator
  3904. ----
  3905. .. _class_VisualServer_method_skeleton_create:
  3906. .. rst-class:: classref-method
  3907. :ref:`RID<class_RID>` **skeleton_create** **(** **)**
  3908. Creates a skeleton and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``skeleton_*`` VisualServer functions.
  3909. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3910. .. rst-class:: classref-item-separator
  3911. ----
  3912. .. _class_VisualServer_method_skeleton_get_bone_count:
  3913. .. rst-class:: classref-method
  3914. :ref:`int<class_int>` **skeleton_get_bone_count** **(** :ref:`RID<class_RID>` skeleton **)** |const|
  3915. Returns the number of bones allocated for this skeleton.
  3916. .. rst-class:: classref-item-separator
  3917. ----
  3918. .. _class_VisualServer_method_sky_create:
  3919. .. rst-class:: classref-method
  3920. :ref:`RID<class_RID>` **sky_create** **(** **)**
  3921. Creates an empty sky and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``sky_*`` VisualServer functions.
  3922. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3923. .. rst-class:: classref-item-separator
  3924. ----
  3925. .. _class_VisualServer_method_sky_set_texture:
  3926. .. rst-class:: classref-method
  3927. void **sky_set_texture** **(** :ref:`RID<class_RID>` sky, :ref:`RID<class_RID>` cube_map, :ref:`int<class_int>` radiance_size **)**
  3928. Sets a sky's texture.
  3929. .. rst-class:: classref-item-separator
  3930. ----
  3931. .. _class_VisualServer_method_spot_light_create:
  3932. .. rst-class:: classref-method
  3933. :ref:`RID<class_RID>` **spot_light_create** **(** **)**
  3934. Creates a spot light and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID can be used in most ``light_*`` VisualServer functions.
  3935. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3936. To place in a scene, attach this spot light to an instance using :ref:`instance_set_base<class_VisualServer_method_instance_set_base>` using the returned RID.
  3937. .. rst-class:: classref-item-separator
  3938. ----
  3939. .. _class_VisualServer_method_sync:
  3940. .. rst-class:: classref-method
  3941. void **sync** **(** **)**
  3942. Not implemented in Godot 3.x.
  3943. .. rst-class:: classref-item-separator
  3944. ----
  3945. .. _class_VisualServer_method_texture_allocate:
  3946. .. rst-class:: classref-method
  3947. void **texture_allocate** **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth_3d, :ref:`Format<enum_Image_Format>` format, :ref:`TextureType<enum_VisualServer_TextureType>` type, :ref:`int<class_int>` flags=7 **)**
  3948. Allocates the GPU memory for the texture.
  3949. .. rst-class:: classref-item-separator
  3950. ----
  3951. .. _class_VisualServer_method_texture_bind:
  3952. .. rst-class:: classref-method
  3953. void **texture_bind** **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` number **)**
  3954. Binds the texture to a texture slot.
  3955. .. rst-class:: classref-item-separator
  3956. ----
  3957. .. _class_VisualServer_method_texture_create:
  3958. .. rst-class:: classref-method
  3959. :ref:`RID<class_RID>` **texture_create** **(** **)**
  3960. Creates an empty texture and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``texture_*`` VisualServer functions.
  3961. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  3962. .. rst-class:: classref-item-separator
  3963. ----
  3964. .. _class_VisualServer_method_texture_create_from_image:
  3965. .. rst-class:: classref-method
  3966. :ref:`RID<class_RID>` **texture_create_from_image** **(** :ref:`Image<class_Image>` image, :ref:`int<class_int>` flags=7 **)**
  3967. Creates a texture, allocates the space for an image, and fills in the image.
  3968. .. rst-class:: classref-item-separator
  3969. ----
  3970. .. _class_VisualServer_method_texture_debug_usage:
  3971. .. rst-class:: classref-method
  3972. :ref:`Array<class_Array>` **texture_debug_usage** **(** **)**
  3973. Returns a list of all the textures and their information.
  3974. .. rst-class:: classref-item-separator
  3975. ----
  3976. .. _class_VisualServer_method_texture_get_data:
  3977. .. rst-class:: classref-method
  3978. :ref:`Image<class_Image>` **texture_get_data** **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` cube_side=0 **)** |const|
  3979. Returns a copy of a texture's image unless it's a CubeMap, in which case it returns the :ref:`RID<class_RID>` of the image at one of the cubes sides.
  3980. .. rst-class:: classref-item-separator
  3981. ----
  3982. .. _class_VisualServer_method_texture_get_depth:
  3983. .. rst-class:: classref-method
  3984. :ref:`int<class_int>` **texture_get_depth** **(** :ref:`RID<class_RID>` texture **)** |const|
  3985. Returns the depth of the texture.
  3986. .. rst-class:: classref-item-separator
  3987. ----
  3988. .. _class_VisualServer_method_texture_get_flags:
  3989. .. rst-class:: classref-method
  3990. :ref:`int<class_int>` **texture_get_flags** **(** :ref:`RID<class_RID>` texture **)** |const|
  3991. Returns the flags of a texture.
  3992. .. rst-class:: classref-item-separator
  3993. ----
  3994. .. _class_VisualServer_method_texture_get_format:
  3995. .. rst-class:: classref-method
  3996. :ref:`Format<enum_Image_Format>` **texture_get_format** **(** :ref:`RID<class_RID>` texture **)** |const|
  3997. Returns the format of the texture's image.
  3998. .. rst-class:: classref-item-separator
  3999. ----
  4000. .. _class_VisualServer_method_texture_get_height:
  4001. .. rst-class:: classref-method
  4002. :ref:`int<class_int>` **texture_get_height** **(** :ref:`RID<class_RID>` texture **)** |const|
  4003. Returns the texture's height.
  4004. .. rst-class:: classref-item-separator
  4005. ----
  4006. .. _class_VisualServer_method_texture_get_path:
  4007. .. rst-class:: classref-method
  4008. :ref:`String<class_String>` **texture_get_path** **(** :ref:`RID<class_RID>` texture **)** |const|
  4009. Returns the texture's path.
  4010. .. rst-class:: classref-item-separator
  4011. ----
  4012. .. _class_VisualServer_method_texture_get_texid:
  4013. .. rst-class:: classref-method
  4014. :ref:`int<class_int>` **texture_get_texid** **(** :ref:`RID<class_RID>` texture **)** |const|
  4015. Returns the opengl id of the texture's image.
  4016. .. rst-class:: classref-item-separator
  4017. ----
  4018. .. _class_VisualServer_method_texture_get_type:
  4019. .. rst-class:: classref-method
  4020. :ref:`TextureType<enum_VisualServer_TextureType>` **texture_get_type** **(** :ref:`RID<class_RID>` texture **)** |const|
  4021. Returns the type of the texture, can be any of the :ref:`TextureType<enum_VisualServer_TextureType>`.
  4022. .. rst-class:: classref-item-separator
  4023. ----
  4024. .. _class_VisualServer_method_texture_get_width:
  4025. .. rst-class:: classref-method
  4026. :ref:`int<class_int>` **texture_get_width** **(** :ref:`RID<class_RID>` texture **)** |const|
  4027. Returns the texture's width.
  4028. .. rst-class:: classref-item-separator
  4029. ----
  4030. .. _class_VisualServer_method_texture_set_data:
  4031. .. rst-class:: classref-method
  4032. void **texture_set_data** **(** :ref:`RID<class_RID>` texture, :ref:`Image<class_Image>` image, :ref:`int<class_int>` layer=0 **)**
  4033. Sets the texture's image data. If it's a CubeMap, it sets the image data at a cube side.
  4034. .. rst-class:: classref-item-separator
  4035. ----
  4036. .. _class_VisualServer_method_texture_set_data_partial:
  4037. .. rst-class:: classref-method
  4038. void **texture_set_data_partial** **(** :ref:`RID<class_RID>` texture, :ref:`Image<class_Image>` image, :ref:`int<class_int>` src_x, :ref:`int<class_int>` src_y, :ref:`int<class_int>` src_w, :ref:`int<class_int>` src_h, :ref:`int<class_int>` dst_x, :ref:`int<class_int>` dst_y, :ref:`int<class_int>` dst_mip, :ref:`int<class_int>` layer=0 **)**
  4039. Sets a part of the data for a texture. Warning: this function calls the underlying graphics API directly and may corrupt your texture if used improperly.
  4040. .. rst-class:: classref-item-separator
  4041. ----
  4042. .. _class_VisualServer_method_texture_set_flags:
  4043. .. rst-class:: classref-method
  4044. void **texture_set_flags** **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` flags **)**
  4045. Sets the texture's flags. See :ref:`TextureFlags<enum_VisualServer_TextureFlags>` for options.
  4046. .. rst-class:: classref-item-separator
  4047. ----
  4048. .. _class_VisualServer_method_texture_set_path:
  4049. .. rst-class:: classref-method
  4050. void **texture_set_path** **(** :ref:`RID<class_RID>` texture, :ref:`String<class_String>` path **)**
  4051. Sets the texture's path.
  4052. .. rst-class:: classref-item-separator
  4053. ----
  4054. .. _class_VisualServer_method_texture_set_proxy:
  4055. .. rst-class:: classref-method
  4056. void **texture_set_proxy** **(** :ref:`RID<class_RID>` proxy, :ref:`RID<class_RID>` base **)**
  4057. Creates an update link between two textures, similar to how :ref:`ViewportTexture<class_ViewportTexture>`\ s operate. When the base texture is the texture of a :ref:`Viewport<class_Viewport>`, every time the viewport renders a new frame, the proxy texture automatically receives an update.
  4058. For example, this code links a generic :ref:`ImageTexture<class_ImageTexture>` to the texture output of the :ref:`Viewport<class_Viewport>` using the VisualServer API:
  4059. ::
  4060. func _ready():
  4061. var viewport_rid = get_viewport().get_viewport_rid()
  4062. var viewport_texture_rid = VisualServer.viewport_get_texture(viewport_rid)
  4063. var proxy_texture = ImageTexture.new()
  4064. var viewport_texture_image_data = VisualServer.texture_get_data(viewport_texture_rid)
  4065. proxy_texture.create_from_image(viewport_texture_image_data)
  4066. var proxy_texture_rid = proxy_texture.get_rid()
  4067. VisualServer.texture_set_proxy(proxy_texture_rid, viewport_texture_rid)
  4068. $TextureRect.texture = proxy_texture
  4069. .. rst-class:: classref-item-separator
  4070. ----
  4071. .. _class_VisualServer_method_texture_set_shrink_all_x2_on_set_data:
  4072. .. rst-class:: classref-method
  4073. void **texture_set_shrink_all_x2_on_set_data** **(** :ref:`bool<class_bool>` shrink **)**
  4074. If ``true``, sets internal processes to shrink all image data to half the size.
  4075. .. rst-class:: classref-item-separator
  4076. ----
  4077. .. _class_VisualServer_method_texture_set_size_override:
  4078. .. rst-class:: classref-method
  4079. void **texture_set_size_override** **(** :ref:`RID<class_RID>` texture, :ref:`int<class_int>` width, :ref:`int<class_int>` height, :ref:`int<class_int>` depth **)**
  4080. Resizes the texture to the specified dimensions.
  4081. .. rst-class:: classref-item-separator
  4082. ----
  4083. .. _class_VisualServer_method_textures_keep_original:
  4084. .. rst-class:: classref-method
  4085. void **textures_keep_original** **(** :ref:`bool<class_bool>` enable **)**
  4086. If ``true``, the image will be stored in the texture's images array if overwritten.
  4087. .. rst-class:: classref-item-separator
  4088. ----
  4089. .. _class_VisualServer_method_viewport_attach_camera:
  4090. .. rst-class:: classref-method
  4091. void **viewport_attach_camera** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` camera **)**
  4092. Sets a viewport's camera.
  4093. .. rst-class:: classref-item-separator
  4094. ----
  4095. .. _class_VisualServer_method_viewport_attach_canvas:
  4096. .. rst-class:: classref-method
  4097. void **viewport_attach_canvas** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas **)**
  4098. Sets a viewport's canvas.
  4099. .. rst-class:: classref-item-separator
  4100. ----
  4101. .. _class_VisualServer_method_viewport_attach_to_screen:
  4102. .. rst-class:: classref-method
  4103. void **viewport_attach_to_screen** **(** :ref:`RID<class_RID>` viewport, :ref:`Rect2<class_Rect2>` rect=Rect2( 0, 0, 0, 0 ), :ref:`int<class_int>` screen=0 **)**
  4104. Copies viewport to a region of the screen specified by ``rect``. If :ref:`Viewport.render_direct_to_screen<class_Viewport_property_render_direct_to_screen>` is ``true``, then viewport does not use a framebuffer and the contents of the viewport are rendered directly to screen. However, note that the root viewport is drawn last, therefore it will draw over the screen. Accordingly, you must set the root viewport to an area that does not cover the area that you have attached this viewport to.
  4105. For example, you can set the root viewport to not render at all with the following code:
  4106. ::
  4107. func _ready():
  4108. get_viewport().set_attach_to_screen_rect(Rect2())
  4109. $Viewport.set_attach_to_screen_rect(Rect2(0, 0, 600, 600))
  4110. Using this can result in significant optimization, especially on lower-end devices. However, it comes at the cost of having to manage your viewports manually. For further optimization, see :ref:`viewport_set_render_direct_to_screen<class_VisualServer_method_viewport_set_render_direct_to_screen>`.
  4111. .. rst-class:: classref-item-separator
  4112. ----
  4113. .. _class_VisualServer_method_viewport_create:
  4114. .. rst-class:: classref-method
  4115. :ref:`RID<class_RID>` **viewport_create** **(** **)**
  4116. Creates an empty viewport and adds it to the VisualServer. It can be accessed with the RID that is returned. This RID will be used in all ``viewport_*`` VisualServer functions.
  4117. Once finished with your RID, you will want to free the RID using the VisualServer's :ref:`free_rid<class_VisualServer_method_free_rid>` static method.
  4118. .. rst-class:: classref-item-separator
  4119. ----
  4120. .. _class_VisualServer_method_viewport_detach:
  4121. .. rst-class:: classref-method
  4122. void **viewport_detach** **(** :ref:`RID<class_RID>` viewport **)**
  4123. Detaches the viewport from the screen.
  4124. .. rst-class:: classref-item-separator
  4125. ----
  4126. .. _class_VisualServer_method_viewport_get_render_info:
  4127. .. rst-class:: classref-method
  4128. :ref:`int<class_int>` **viewport_get_render_info** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` info **)**
  4129. Returns a viewport's render information. For options, see the :ref:`ViewportRenderInfo<enum_VisualServer_ViewportRenderInfo>` constants.
  4130. .. rst-class:: classref-item-separator
  4131. ----
  4132. .. _class_VisualServer_method_viewport_get_texture:
  4133. .. rst-class:: classref-method
  4134. :ref:`RID<class_RID>` **viewport_get_texture** **(** :ref:`RID<class_RID>` viewport **)** |const|
  4135. Returns the viewport's last rendered frame.
  4136. .. rst-class:: classref-item-separator
  4137. ----
  4138. .. _class_VisualServer_method_viewport_remove_canvas:
  4139. .. rst-class:: classref-method
  4140. void **viewport_remove_canvas** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas **)**
  4141. Detaches a viewport from a canvas and vice versa.
  4142. .. rst-class:: classref-item-separator
  4143. ----
  4144. .. _class_VisualServer_method_viewport_set_active:
  4145. .. rst-class:: classref-method
  4146. void **viewport_set_active** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` active **)**
  4147. If ``true``, sets the viewport active, else sets it inactive.
  4148. .. rst-class:: classref-item-separator
  4149. ----
  4150. .. _class_VisualServer_method_viewport_set_canvas_stacking:
  4151. .. rst-class:: classref-method
  4152. void **viewport_set_canvas_stacking** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas, :ref:`int<class_int>` layer, :ref:`int<class_int>` sublayer **)**
  4153. Sets the stacking order for a viewport's canvas.
  4154. \ ``layer`` is the actual canvas layer, while ``sublayer`` specifies the stacking order of the canvas among those in the same layer.
  4155. .. rst-class:: classref-item-separator
  4156. ----
  4157. .. _class_VisualServer_method_viewport_set_canvas_transform:
  4158. .. rst-class:: classref-method
  4159. void **viewport_set_canvas_transform** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` canvas, :ref:`Transform2D<class_Transform2D>` offset **)**
  4160. Sets the transformation of a viewport's canvas.
  4161. .. rst-class:: classref-item-separator
  4162. ----
  4163. .. _class_VisualServer_method_viewport_set_clear_mode:
  4164. .. rst-class:: classref-method
  4165. void **viewport_set_clear_mode** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` clear_mode **)**
  4166. Sets the clear mode of a viewport. See :ref:`ViewportClearMode<enum_VisualServer_ViewportClearMode>` for options.
  4167. .. rst-class:: classref-item-separator
  4168. ----
  4169. .. _class_VisualServer_method_viewport_set_debug_draw:
  4170. .. rst-class:: classref-method
  4171. void **viewport_set_debug_draw** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` draw **)**
  4172. Sets the debug draw mode of a viewport. See :ref:`ViewportDebugDraw<enum_VisualServer_ViewportDebugDraw>` for options.
  4173. .. rst-class:: classref-item-separator
  4174. ----
  4175. .. _class_VisualServer_method_viewport_set_disable_3d:
  4176. .. rst-class:: classref-method
  4177. void **viewport_set_disable_3d** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)**
  4178. If ``true``, a viewport's 3D rendering is disabled.
  4179. .. rst-class:: classref-item-separator
  4180. ----
  4181. .. _class_VisualServer_method_viewport_set_disable_environment:
  4182. .. rst-class:: classref-method
  4183. void **viewport_set_disable_environment** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` disabled **)**
  4184. If ``true``, rendering of a viewport's environment is disabled.
  4185. .. rst-class:: classref-item-separator
  4186. ----
  4187. .. _class_VisualServer_method_viewport_set_global_canvas_transform:
  4188. .. rst-class:: classref-method
  4189. void **viewport_set_global_canvas_transform** **(** :ref:`RID<class_RID>` viewport, :ref:`Transform2D<class_Transform2D>` transform **)**
  4190. Sets the viewport's global transformation matrix.
  4191. .. rst-class:: classref-item-separator
  4192. ----
  4193. .. _class_VisualServer_method_viewport_set_hdr:
  4194. .. rst-class:: classref-method
  4195. void **viewport_set_hdr** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)**
  4196. If ``true``, the viewport renders to high dynamic range (HDR) instead of standard dynamic range (SDR). See also :ref:`viewport_set_use_32_bpc_depth<class_VisualServer_method_viewport_set_use_32_bpc_depth>`.
  4197. \ **Note:** Only available on the GLES3 backend.
  4198. .. rst-class:: classref-item-separator
  4199. ----
  4200. .. _class_VisualServer_method_viewport_set_hide_canvas:
  4201. .. rst-class:: classref-method
  4202. void **viewport_set_hide_canvas** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` hidden **)**
  4203. If ``true``, the viewport's canvas is not rendered.
  4204. .. rst-class:: classref-item-separator
  4205. ----
  4206. .. _class_VisualServer_method_viewport_set_hide_scenario:
  4207. .. rst-class:: classref-method
  4208. void **viewport_set_hide_scenario** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` hidden **)**
  4209. Currently unimplemented in Godot 3.x.
  4210. .. rst-class:: classref-item-separator
  4211. ----
  4212. .. _class_VisualServer_method_viewport_set_msaa:
  4213. .. rst-class:: classref-method
  4214. void **viewport_set_msaa** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` msaa **)**
  4215. Sets the anti-aliasing mode. See :ref:`ViewportMSAA<enum_VisualServer_ViewportMSAA>` for options.
  4216. .. rst-class:: classref-item-separator
  4217. ----
  4218. .. _class_VisualServer_method_viewport_set_parent_viewport:
  4219. .. rst-class:: classref-method
  4220. void **viewport_set_parent_viewport** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` parent_viewport **)**
  4221. Sets the viewport's parent to another viewport.
  4222. .. rst-class:: classref-item-separator
  4223. ----
  4224. .. _class_VisualServer_method_viewport_set_render_direct_to_screen:
  4225. .. rst-class:: classref-method
  4226. void **viewport_set_render_direct_to_screen** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)**
  4227. If ``true``, render the contents of the viewport directly to screen. This allows a low-level optimization where you can skip drawing a viewport to the root viewport. While this optimization can result in a significant increase in speed (especially on older devices), it comes at a cost of usability. When this is enabled, you cannot read from the viewport or from the ``SCREEN_TEXTURE``. You also lose the benefit of certain window settings, such as the various stretch modes. Another consequence to be aware of is that in 2D the rendering happens in window coordinates, so if you have a viewport that is double the size of the window, and you set this, then only the portion that fits within the window will be drawn, no automatic scaling is possible, even if your game scene is significantly larger than the window size.
  4228. .. rst-class:: classref-item-separator
  4229. ----
  4230. .. _class_VisualServer_method_viewport_set_scenario:
  4231. .. rst-class:: classref-method
  4232. void **viewport_set_scenario** **(** :ref:`RID<class_RID>` viewport, :ref:`RID<class_RID>` scenario **)**
  4233. Sets a viewport's scenario.
  4234. The scenario contains information about the :ref:`ScenarioDebugMode<enum_VisualServer_ScenarioDebugMode>`, environment information, reflection atlas etc.
  4235. .. rst-class:: classref-item-separator
  4236. ----
  4237. .. _class_VisualServer_method_viewport_set_shadow_atlas_quadrant_subdivision:
  4238. .. rst-class:: classref-method
  4239. void **viewport_set_shadow_atlas_quadrant_subdivision** **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` quadrant, :ref:`int<class_int>` subdivision **)**
  4240. Sets the shadow atlas quadrant's subdivision.
  4241. .. rst-class:: classref-item-separator
  4242. ----
  4243. .. _class_VisualServer_method_viewport_set_shadow_atlas_size:
  4244. .. rst-class:: classref-method
  4245. void **viewport_set_shadow_atlas_size** **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` size **)**
  4246. Sets the size of the shadow atlas's images (used for omni and spot lights). The value will be rounded up to the nearest power of 2.
  4247. .. rst-class:: classref-item-separator
  4248. ----
  4249. .. _class_VisualServer_method_viewport_set_sharpen_intensity:
  4250. .. rst-class:: classref-method
  4251. void **viewport_set_sharpen_intensity** **(** :ref:`RID<class_RID>` viewport, :ref:`float<class_float>` intensity **)**
  4252. Sets the sharpening ``intensity`` for the ``viewport``. If set to a value greater than ``0.0``, contrast-adaptive sharpening will be applied to the 3D viewport. This has a low performance cost and can be used to recover some of the sharpness lost from using FXAA. Values around ``0.5`` generally give the best results. See also :ref:`viewport_set_use_fxaa<class_VisualServer_method_viewport_set_use_fxaa>`.
  4253. .. rst-class:: classref-item-separator
  4254. ----
  4255. .. _class_VisualServer_method_viewport_set_size:
  4256. .. rst-class:: classref-method
  4257. void **viewport_set_size** **(** :ref:`RID<class_RID>` viewport, :ref:`int<class_int>` width, :ref:`int<class_int>` height **)**
  4258. Sets the viewport's width and height.
  4259. .. rst-class:: classref-item-separator
  4260. ----
  4261. .. _class_VisualServer_method_viewport_set_transparent_background:
  4262. .. rst-class:: classref-method
  4263. void **viewport_set_transparent_background** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)**
  4264. If ``true``, the viewport renders its background as transparent.
  4265. .. rst-class:: classref-item-separator
  4266. ----
  4267. .. _class_VisualServer_method_viewport_set_update_mode:
  4268. .. rst-class:: classref-method
  4269. void **viewport_set_update_mode** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` update_mode **)**
  4270. Sets when the viewport should be updated. See :ref:`ViewportUpdateMode<enum_VisualServer_ViewportUpdateMode>` constants for options.
  4271. .. rst-class:: classref-item-separator
  4272. ----
  4273. .. _class_VisualServer_method_viewport_set_usage:
  4274. .. rst-class:: classref-method
  4275. void **viewport_set_usage** **(** :ref:`RID<class_RID>` viewport, :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` usage **)**
  4276. Sets the viewport's 2D/3D mode. See :ref:`ViewportUsage<enum_VisualServer_ViewportUsage>` constants for options.
  4277. .. rst-class:: classref-item-separator
  4278. ----
  4279. .. _class_VisualServer_method_viewport_set_use_32_bpc_depth:
  4280. .. rst-class:: classref-method
  4281. void **viewport_set_use_32_bpc_depth** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)**
  4282. If ``true``, allocates the viewport's framebuffer with full floating-point precision (32-bit) instead of half floating-point precision (16-bit). Only effective if :ref:`viewport_set_use_32_bpc_depth<class_VisualServer_method_viewport_set_use_32_bpc_depth>` is used on the same :ref:`Viewport<class_Viewport>` to set HDR to ``true``.
  4283. \ **Note:** Only available on the GLES3 backend.
  4284. .. rst-class:: classref-item-separator
  4285. ----
  4286. .. _class_VisualServer_method_viewport_set_use_arvr:
  4287. .. rst-class:: classref-method
  4288. void **viewport_set_use_arvr** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` use_arvr **)**
  4289. If ``true``, the viewport uses augmented or virtual reality technologies. See :ref:`ARVRInterface<class_ARVRInterface>`.
  4290. .. rst-class:: classref-item-separator
  4291. ----
  4292. .. _class_VisualServer_method_viewport_set_use_debanding:
  4293. .. rst-class:: classref-method
  4294. void **viewport_set_use_debanding** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` debanding **)**
  4295. If ``true``, uses a fast post-processing filter to make banding significantly less visible. In some cases, debanding may introduce a slightly noticeable dithering pattern. It's recommended to enable debanding only when actually needed since the dithering pattern will make lossless-compressed screenshots larger.
  4296. \ **Note:** Only available on the GLES3 backend. :ref:`Viewport.hdr<class_Viewport_property_hdr>` must also be ``true`` for debanding to be effective.
  4297. .. rst-class:: classref-item-separator
  4298. ----
  4299. .. _class_VisualServer_method_viewport_set_use_fxaa:
  4300. .. rst-class:: classref-method
  4301. void **viewport_set_use_fxaa** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` fxaa **)**
  4302. Enables fast approximate antialiasing for this viewport. FXAA is a popular screen-space antialiasing method, which is fast but will make the image look blurry, especially at lower resolutions. It can still work relatively well at large resolutions such as 1440p and 4K. Some of the lost sharpness can be recovered by enabling contrast-adaptive sharpening (see :ref:`viewport_set_sharpen_intensity<class_VisualServer_method_viewport_set_sharpen_intensity>`).
  4303. .. rst-class:: classref-item-separator
  4304. ----
  4305. .. _class_VisualServer_method_viewport_set_vflip:
  4306. .. rst-class:: classref-method
  4307. void **viewport_set_vflip** **(** :ref:`RID<class_RID>` viewport, :ref:`bool<class_bool>` enabled **)**
  4308. If ``true``, the viewport's rendering is flipped vertically.
  4309. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  4310. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  4311. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  4312. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`