-
მრავალი გზა არსებობს
იმისთვის, რომ ანიმაცია გავაკეთოთ,
-
მთავარი პრინციპი კი ყოველთვის ერთია.
-
თუ აიღებთ რამდენიმე ნახატს ან სურათს,
-
სადაც თითოეული წინასგან ოდნავ განსვავდება
-
და მათ რიგ-რიგობით სწრაფად ნახავთ,
-
გამოჩნდება, რომ თითქოს სურათი მოძრაობს.
-
ადრე ყველანაირ
ანიმაციას ხელით ხატვდნენ
-
და სამწამიანი ანიმაციის
გაკეთებასაც კი დიდი დრო უნდოდა.
-
საბედნიეროდ, ჩვენ მომავალში ვცხოვრობთ.
-
საკმაოდ მარტივია კოდით
უბრალო ანიმაციის გაკეთება.
-
მე კი გიჩვენებთ როგორ!
-
მარჯვნივ როგორც ხედავთ
პატარა საყვარელი მანქანაა,
-
ფონად კი მშვენიერი ყვითელი ფერია.
-
-- დიახ, ეს მანქანა
ჩემი დახატულია, გმადლობთ --
-
როგორც ვახსენე,
ფონად მშვენიერი ფერია.
-
მანქანას კონტური არ აქვს, ანუ
noStroke() ფუნქცია გვაქვს გამოძახებული.
-
აქ კი ახალ ცვლადს ვქმნით, x-ს, რომელიც
მანქანის მდებარეობას წარმოადგენს
-
და ვანიჭებთ მნიშვნელობას 10.
-
როგორც ხედავთ, თუ
ამ მნიშვნელობას შევცვლით,
-
მანქანა წინ და უკან დაიწყებს მოძრაობას.
-
-- დავუბრუნოთ ათს --
-
შემდეგ, აქ ორგან ვწერთ
საღებავის ფერს მანქანისთვის
-
და ვხატავთ ორ მართკუთხედს
-
პირველი მართკუთხედი ქვედა
ნაწილისთვისაა, მეორე - ზედასთვის.
-
შემდეგ იგივენაირად ვიქცევით ბორბლებისთვის.
-
ვწერთ საღებავის ფერს და ვხატავთ ორ ელიფსს:
-
ერთი იქნება x + 25-ზე,
მეორე კი x + 75-ზე.
-
და როგორც იქნა, მივედით ახალ მასალაზე.
-
ამას ფუნქციის განმარტება ეწოდება.
-
ამის შესახებ მოგვიანებით ისწავლით,
-
ამჯერად უბრალოდ შეხედეთ და
ეცადეთ დაიმახსოვროთ როგორ გამოიყურება.
-
მნიშვნელოვანია იმისი ემჩნევა, რომ გვაქვს
სიტყვა draw და ფიგურული ფრჩხილები.
-
-- ეს გახსნილი ფრჩხილი
და ეს დახურული ფრჩხილი --
-
ამ ყველაფერს ვუწოდებთ
ხატვის, ანუ ანიმაციის ციკლს.
-
ნებისმიერ რამეს,
რასაც ამ ფრჩხილებში ჩაწერთ,
-
ძალიან სწრაფად გაეშვება და გამეორდება.
-
სწორედ ამიტომ ეწოდება ციკლი.
-
ნებისმიერი რამ რაც ამ ფრჩხილებს გარეთაა,
-
გაეშვება პროგრამის
დასაწყისში და მხოლოდ ერთხელ.
-
ესეიგი, ანიმაციისთვის პირველი ნაბიჯი
კოდის ამ ფრჩხილებში ჩაწერაა,
-
რათა სურათები ხელახლა დაიხატოს.
-
მოდით ასე მოვიქცეთ.
-
-- ამ კოდს აქედან
პირდაპირ ციკლში გადავიტან --
-
იმისთვის რომ არ დამავიწყდეს,
რომ ეს ყველაფერი ციკლშია,
-
ხაზებს მარჯვნივ გადავწევ, მოვნიშნავ
ყველა ხაზს და დავაწვები Tab-ს.
-
ახლა უკეთ ჩანს რომ
ეს ხაზები ფრჩხილებს შორისაა.
-
როგორც ხედავთ, ყველაფერი
იგივენაირადაა, არაფერი შეცვლილა.
-
პირველად, როცა ამ
დახატვის ციკლს გავუშვებთ,
-
კომპიუტერი უბრალოდ შექმნის ახალ ცვლად x-ს,
მიანიჭებს ათს, დახატავს ორ მართკუთხედს
-
და დახატავს ორ ელიფსს.
-
შემდეგ დაბრუნდება
დასაწყისში და მოიქცევა ასე:
-
შექმნის ახალ ცვლად x-ს, მიანიჭებს ათს,
დახატავს ორ მართკუთხედს და ორ ელიფსს.
-
შემდეგ ამ ყველაფერს ისევ გაიმეორებს.
-
არაფერი არ იცვლება,
ცხადია, აინმაცია არ ჩანს.
-
უბრალოდ ხელახლა იხატება ერთი
და იგივე სურათი ერთმანეთზე.
-
გაიხსენეთ, რაიმეს ასამოძრავებლად, ნახატი
ყოველ ჯერზე ოდნავ უნდა იცვლებოდეს.
-
ესეიგი, თუ მინდა რომ მანქანა წინ წავიდეს,
-
სავარაუდოდ x ცვლადი უნდა შევცვალო, არა?
-
მოდით ასეც მოვიქცეთ, დავწეროთ 11.
-
მაგრამ არა, ახლა მანქანა
ყოველთვის 11 პოზიციაზე იქნება.
-
როგორ უნდა ვცვალო x-ის
მნიშვნელობა ყოველთვის,
-
როცა კომპიუტერი სულ
ერთსა და იმავეს აკეთებს?
-
კარგი, შეხედეთ ამ მაგიურ ხრიკს
-
თუ გაიხსნებთ, var x ქმნის ახალ ცვლადს.
-
როცა ეს ხატვის ციკლში გვაქვს,
-
ყოველ ჯერზე იქმნება ახალი ცვლადი x.
-
თუ ამას ციკლს გარეთ დავწერთ,
მაშინ ის შეიქმნება მხოლოდ ერთხელ.
-
ამ შემთხვევაში, ყოველთვის როცა კომპიუტერი
ამ კოდს გაუშვებს და x-ს დაინახავს,
-
ის გამოიყენებს იმ მნიშვნელობას,
რომელიც მას ბოლოს მივანიჭეთ.
-
ასეც ვიზამ, შევქმნი ცვლადს
და გავიტან ციკლს გარეთ.
-
ახლა ცვლადი მხოლოდ ერთხელ იქმნება.
-
ყოველ ჯერზე, როცა x-ს ვხვდებით,
ვიყენებთ ერთსა და იმავე ცვლადს.
-
ახლა ბოლო მნიშვნელობა არის 11,
ესეიგი x ყოველთვის იქნება 11.
-
-- ახლა კი მაგია --
-
სადმე ციკლში, შევცვალოთ x-ის მნიშვნელობა,
გავხადოთ ის წინანდელზე ოდნავ მეტი.
-
დავწეროთ: x ხდება x-ის
ძველ მნიშვნელობას პლუს ერთი.
-
ნახეთ, მუშაობს!
-
მაგრამ ასე ძალიან გადღაბნილია.
-
შეიძლება გაგიკვირდეთ თუ რატომაა ასე.
-
ეს იმიტომ, რომ დაგვავიწყდა
ფონი ხელახლა დაგვეხატა.
-
მანქანა ხელახლა იხატება, მაგრამ
მანამდე დახატული მანქანებიც ჩანს.
-
ესეიგი, თუ ამ ხაზს ციკლში
ჩავაგდებთ და ხელახლა გავუშვებთ კოდს..
-
მშვენიერია!
-
თუ გვინდა მანქანა უფრო სწრაფად წავიდეს,
-
შეგვიძლია გავაკონტროლოთ
რამდენით შეიცვლება x თითო ჯერზე.
-
თუ გვინდა, ათი მივანიჭოთ.
-
შეგვიძლია უარყოფითიც
გავხადოთ, მაგალითად x მინუს 10.
-
-- აი, დაბრუნდა --
-
-- ისევ დადებითი.. --
-
დაიმახსოვრეთ რამდენიმე მნიშნველოვანი რამ:
-
ამას ეწოდება ხატვის ციკლი.
-
თქვენი კოდი, რომელიც
ხატავს, უნდა ჩააგდოთ აქ
-
და სურათი ისევ და ისევ დაიხატება.
-
შემდეგ, ცვლადი უნდა შექმნათ ციკლს გარეთ.
-
ეს ძალიან მნიშვნელოვანია, რომ
ცვლადი ხატვის ციკლს გარეთ იყოს,
-
რათა იგივე ციკლი
გამოვიყენოთ ისევ და ისევ.
-
შემდეგ, ხატვის ციკლს შიგნით, ცვლადს
ყოველ ჯერზე ოდნავ შევცვლით,
-
ძირითადად გავუტოლებთ მის
ძველ სიმბოლოს პლუს რამე რიცხვს.
-
და ბოლოს, თქვენი ცვლადი სადმე
უნდა გამოიყენოთ ხატვის კოდში,
-
რომ თქვენი ნახატი ყოველ ჯერზე შეიცვალოს.
-
სულ ესაა.