Acknowledged. This will be fixed soon. Thanks
Best posts made by info-creaticode
-
RE: Some avatars aren't shown to select until searched for
-
Wishlist for New Models
If you are looking for a particular 3D model that is not in our library, please reply to this topic. If you can include an example picture of it, it would be more clear what you are looking for. We will try to fulfill these requests as best as we can. Please make sure you do not submit duplicate requests by searching for it first.
Thanks
CreatiCode Support -
RE: Raycasting.
Basically it is drawing some arrows from the object to all directions, and when the arrow touches some other object, it triggers some actions.
More info here:
https://www.forum.creaticode.com/topic/41/checking-for-object-collisions-with-ray-cast
-
Number of Seconds since 2000
Introduction
In MIT Scratch, you can already manage dates using the ādays since 2000ā block. However, if you need a more granular control of date and time, you can use this new block:
Ā
This block will return the number of seconds that have passed between the given timestamp and the beginning of 2000.01.01.
Ā
ĀInput Format
Ā
The input is a timestamp, which contains the date, a āTā, and then the time. The date is represented as year:month:day. The time is represented as hour:minute:second. Each field has to be 2 digits, except that the year has to be 4 digits.
The timestamp is assumed to be the local time of the computer thatās running this program. If you want to use the UTC time, which is the same across the world, then append a āZā at the end of the timestamp, such as ā2024.01.01T10:00:00Zā.
If the input is left empty, then the current time is used:
Ā
ĀCalculating Time Difference
Ā
With this new block, you can easily calculate how many seconds are between 2 timestamps. You just need to run this new block for both timestamps, then calculate the difference between them:
Ā
ĀConverting to Date
Ā
You can also convert the number of seconds back to a Date object. For example, the program below first gets the number of seconds for a specific timestamp, then create a date object using that result, and we get the same timestamp as our input:
-
Shape-Based Particle Emitters
Ā
Introduction
Ā
You learned about Single-Point Particle Emitter, which generates particles from a single point in the 3D space.
In this article, we will discuss āshape-basedā emitters, which generate particles from within a 3D shape like a box. They allow us to produce very different visual effects.
Ā
ĀBox Emitters
Ā
The box emitter is simply a transparent 3D box, and it can generate new particles from any random point inside this box. We can not see this box since it is transparent, but we can indirectly see its shape by where the particles are generated.
To use the box emitter, we need 2 steps:
- Select the āBoxā shape when creating the emitter
- Configure the size of the box by its minimum and maximum X/Y/Z positions
Here is a simple example:
Ā
This program creates a box emitter that is 400 units in each dimension. For example, in the X dimension, the minimum is -200 and the maximum is 200, so the x position of new particles can be any random value between -200 and 200. When you run this program, you can see the particles are all confined within this box-shaped region:Ā
ĀSphere Emitters
Ā
The shape of the emitter can also be a sphere. When we configure the sphere shape, we can set its size using the āradiusā parameter.
There is also a ārangeā parameter (between 0 and 1), which controls the range of possible values along the radius. You can think of ārangeā as āthicknessā:
- When ārangeā is 0, the particles will only be generated on the surface of the sphere, and not inside it.
- When ārangeā is 1, the particles can be generated at any random point on the surface or inside the sphere.
- When ārangeā is between 0 and 1, the particles will not be generated near the center of the sphere, but can be generated on the surface or near the surface.
Here is an example program with a range of 0:
Ā
As shown, particles are only appearing on the surface of the sphere:Ā
ĀHemisphere Emitters
Ā
Hemisphere emitters generate particles from a half-sphere shape. You can specify its radius and range the same way as the sphere emitters.
One thing special about hemisphere emitters is that we can rotate the half sphere to different directions. As shown below, when we rotate it around X-axis for 90 degrees, the new particles are all generated at the bottom half of the sphere:
Ā
ĀCylinder Emitters
Ā
The emitter can also take a cylinder shape. We can control the radius of the circle, and also the height of the cylinder.
The ārangeā parameter also works for cylinders. You can think of it as controling the āthicknessā of the cylinderās skin. For example, when radius 0.5, the thickness of the cylinder skin is half of the radius:
Ā
The cylinder shape also supports an additional parameter of ādirection randomnessā. This only matters when we set the particles to not face the camera all the time, and we will see the particles facing different random directions when we set ādirection randomnessā to 100:Ā
Lastly, we can rotate the cylinder emitter as well. For example, we can make it ālie downā:Ā
ĀCone Emitters
Ā
For the cone-shaped emitter, we can console these parameters:
- Radius: The radius of the bottom circle of the cone
- Angle: The opening angle of the cone. Note that the angle and the radius would imply the height of the cone, so we wonāt need another āheightā parameter.
- Radius Range: This range value applies along the radius direction. When it is 0, the particles will only be generated on the surface of the cone. When it is 1, the particles may come out from anywhere inside the cone or on its surface.
- Height Range: This range value applies along the height of the cone. When it is 0, the particles will only emerge from the bottom of the cone, and when it is 1, the entire height can generate particles.
We can rotate cone emitters as well.
-
RE: "Important Forum Announcement" - Question
@011830-0a42ef84 said in "Important Forum Announcement" - Question:
@info-creaticode am I able to be a moderator/mod helper?
Currently 2 helpers are good enough. If they are overwhelmed we might need to add more. Thanks for the offer.
-
RE: Multiplayer 3D games
We are working on fixing the cloud blocks. Should be within next few days. Sorry about that.
-
3D - A Spinning Earth (Difficulty: 1)
Ā
Key Topics Covered
Ā
ĀIntroduction
In this tutorial, you will learn to create a spinning Earth:
Ā
ĀStep 1 - Initialize An Empty Scene
First, create a new project, and load an empty scene using the āinitialize 3D sceneā block.
By default, it will create an empty scene with nothing but a blue background:
Ā
ĀStep 2 - Set the Background Starfield
Next, use the āset skyā block to create a better-looking backdrop:
You should get a starfield with the Sun on the right.
Ā
ĀStep 3 - Add a Big Sphere
Next, add a sphere with a large diameter of 10000 to the scene. Donāt worry about its color yet.
The sphere would look brighter on the side that faces the Sun.
Ā
ĀStep 4 - Add Earth Texture
Now we need to update the sphereās texture with the Earth. Add the āupdate textureā block, click the āPlease selectā input box, then search for āEarthā in the library window.
Ā
ĀStep 5 - Flip the Earth Texture
You might have noticed an issue with the texture: the continents are upside-down. We need to flip the texture vertically to correct this issue. This can be done by changing the vertical repeat count from 1 to -1.
Ā
ĀStep 6 - Make the Earth Spin
To make the Earth object spin, we can use the āset speedā block. Note that the Earth needs to be spinning from āleftā to "right, so the āZ-rotationā speed needs to be negative.
Now your Earth object should be spinning slowly.
Ā
ĀStep 7 - Highlight Around the Earth
Lastly, to make the Earth object glow in blue lights, we can create a new highlight layer, then add the sphere to that layer.
Now your Earth object should carry a blue light around it.
Ā
Next Steps
You can try to use a similar method to build other projects. Here are some example ideas:
- A Different Planet: You can change Earth to other planets like Mars;
- A Spinning Trophy: You can try to make a trophy object spin and shine.
-
RE: Suggestions for both the forums and CreatiCode!
@mathew139616-10db496a
Thanks for the suggestions.
For unpublished projects, the authors do not want it to be seen, so we can not let anyone see it, even the original author.
We can look into adding the notifications.
For forum, most of the questions are fairly specific to CreatiCode so ChatGPT canāt answer them well. Donāt worry, we have enough staff to answer questions, and there are also a few active users who often help out.
-
RE: Does saving private data act as like a "secret" or "environment variable"?
It should not be used to store real secrets like passwords. The reason is that this block runs on the āclientā side (the userās browser), so when the data is sent over the Internet to the webserver, it is exposed in the network package.
However, for most games/projects you build for learning, it should be good enough.
The āprivateā mode is meant to store data specific for one user. Say 100 users are running your shared game. Suppose each of them can specify a secret passcode that can be used to save or load game progress. You can use this block and use the āprivateā mode, so the data is separated by user ID, and 2 users canāt see each otherās data.
Latest posts made by info-creaticode
-
RE: ChatGPT is limited and not as powerful as actual ChatGPT
What woud you like it to say instead in this situation?
-
RE: ChatGPT is limited and not as powerful as actual ChatGPT
The ChatGPT API you use is the same as the one running on https://chatgpt.com/, except there are additional moderations on its input and output.
You are dealing with a very complex task, so it will take some efforts to get the prompt right.
Here are some suggestions worth trying:
- You have a few ātrainā blocks, which essentially just give ChatGPT some additional system prompts. It is strongly recommended that all of them be combined into one longer prompt instead of having a few pieces. The reason is that each time you send a system request, ChatGPt will generate a response, and you are ignoring those responses.
Ā
As explained in our tutorials, it is much better to use a text editor (like the comment box or just any text editor), write the entire prompt in there, then copy them into the ChatGPT block.- You are trying to teach it to do quite a few things. Usually it is better to write the examples as dialogs:
user: ā¦
you: ā¦
user: ā¦
you: ā¦This is much easier for ChatGPT to understand
-
Please make sure the prompts are self-explanatory. For example, this part is not very clear: āNow make sure to remember your variablesā. Since these are special tools for callback, not really āvariablesā, right?
-
Since you are composing a super long prompt, it is better to have sections with headers, such as these:
<Overview> <Tools you can callback> <Current Task>
- Start simple and try to add more. For example, make sure āCALCā is working fine, then you add one more tool, then add another one. This will allow you to catch any issue early on. Currently, it doesnāt work for CALC yet:
-
RE: Viewing Remixes
It only shows a project if someone has remixed your project, and then shared their project.
Whatās your projectās URL?
-
RE: my project keeps on breaking
Yes, XO had an issue yesterday due to some language setting problem, but it is fixed now.
The crash should not be due to XO. Most likely it was because of some special characters in the blocks that could not be saved or loaded correctly.
I suggest you make frequent saves of your project as new copies at this point before we can reliably reproduce the issue. Sorry for the inconvenience.
-
ChatGPT AI: Enhance ChatGPT with Web Search (Difficulty: 4)
Introduction
Ā
Large language models like ChatGPT learn all their knowledge from their training data, so they would not know about any new information after the cut-off date of the training data.
For example, if we ask ChatGPT this question: āWhich team won the Copa America 2024?ā it will not be able to answer since, at the time of writing, the cutoff date of ChatGPT is October 2023.
Ā
ĀEnhancement to ChatGPT
Ā
To fix this issue, we can āteachā ChatGPT to ask for help. To illustrate the idea, we can think of ChatGPT, the user and our program as 3 characters, and their conversation may look like this:
- User to Program: Who won the Copa AmƩrica 2024?
- Program to ChatGPT: Hey ChatGPT, can you try to answer this question: Who won the Copa AmƩrica 2024? BTW, if you ever find you need to search the web to get some new information, I can help.
- ChatGPT to Program: That question is beyond my cutoff date. Please do a Google search on āWho won the Copa AmĆ©rica 2024?ā
- Program to ChatGPT: Sure. Let me Google itā¦ OK, I got it, here is the research result: Argentina
- ChatGPT to Program: Thanks. Based on the search result, here is the answer for the user: Argentina
- Program to User: Argentina
Ā
Now, letās build this workflow step by step.Ā
ĀStep 1 - Remix the Helpful Assistant Project
Ā
play.creaticode.com/projects/6531b7e60fdce080a4481c1d
Ā
ĀStep 2 - Update the Initial Prompt
Ā
Since we will write a fairly long prompt, letās still use the ācommentā area to compose the prompt.
First, add the comment area by right-clicking the green flag block:
Ā
Next, copy the following prompt into the comment area:You are a friendly assistant, and I am an agent who can help you. Make sure your response is concise and simple to understand. Do not say anything inappropriate. When you need a web search before answering a user question, instead of responding to the user, you should respond to me using a special tag "WEB:", followed by the query to search for. I will provide the answer to you, and then you can generate the response to the user. Now say "hi"
Ā
This prompt contains 3 parts:- It first introduces the context, where ChatGPT is playing the role of a friendly assistant, and we (our program) are an agent thatās helping it.
- Then, a special instruction is given to ChatGPT so that it asks us to do a web search when it needs to get some new information online. The special syntax it should use is is also specified, which is the āWEB:ā tag.
- Lastly, we ask ChatGPT to say āhiā and wait for user input.
Ā
Next, you can copy this entire prompt from the comment area into the request block, then press Enter to confirm:Ā
Ā
Now letās test with the same question again, and we will get a āWEB:ā response from ChatGPT:Ā
This is a great improvement: ChatGPT has learned that it can use a web search tool to help it answer the question. Of course, we should not show this to the user since the final answer has not yet been given. Letās change that below.Ā
ĀStep 5 - Enforce the Output Format
Ā
ChatGPT may not always use the same format every time. For example, it might respond like this:
Ā
The problem with this response is that our program will have a hard time extracting the exact query to be used for web search. To force ChatGPT to use the correct format, we can make 2 changes to our prompt:- Add a note, which emphasizes the format we expect.
- Give an example, which demonstrates the right way to respond.
Here is the updated prompt:
You are a friendly assistant, and I am an agent who can help you. Make sure your response is concise and simple to understand. Do not say anything inappropriate. When you need a web search before answering a user question, instead of responding to the user, you should respond to me using a special tag "WEB:", followed by the query to search for. I will provide the answer to you, and then you can generate the response to the user. Note that when you need a web search, you have to start with "WEB:", and say nothing else except for the query. Avoid asking user if you should do a web search since the user does not know about the web search tool. For example: user: Who won the 2024 Olympics 100m sprint for men? you: WEB: winner of 2024 Olympics 100m sprint for men system: At the 2024 Olympics in Paris, American sprinter Noah Lyles triumphed in the menās 100m final you: American sprinter Noah Lyles Now say "hi"
Now please copy this new prompt to your comment area, then copy that into the system request block. This will help ensure ChatGPT sticks to the format we specify.
Ā
ĀStep 6 - Check if the response starts with āWEB:ā
Ā
Next, we will handle ChatGPTās response differently depending on whether it starts with the special tag of āWEB:ā. We will only add some additional steps when ChatGPTās response starts with āWEB:ā.
Ā
ĀStep 7 - Run the web search
Ā
When we find ChatGPT is asking us to do a web search, we can extract the extract query sentence from ChatGPTās response, then run a web search using that query sentence.
Ā
The logic is the following:- The response from ChatGPT starts with āWEB:ā, and we only need the expression that comes after that. So, we can use the āsubstringā block to get the substring of the response starting from the 5th letter. For example, if the response variable is āWEB: winner of 2024 Olympics 100m sprint for menā, then the substring will be " winner of 2024 Olympics 100m sprint for men".
- We can use the āweb searchā block from the AI category to search the web and store the top 3 results in the āresult_tableā.
Ā
Now, letās try to get some search results by running the program again. To view the āresult_tableā, we have to remove the chat window from the stage. We can run the āremove all widgetsā block by itself.Ā
After that, show the āresult_tableā on the stage by checking its checkbox:Ā
You will see the result_table contains 3 columns: title, link and snippet. The snippet is simply a short summary of that web page.
Ā
ĀStep 8 - Aggregate the Search Result
Ā
To return the search result to ChatGPT, we first have to aggregate the content in the result_table into a single variable named āanswerā. For example, we can compose the answer using a few join blocks like this to include the top search result:
Ā
Note that ā\nā represents line return, which helps format the answer text better. As a result, the āanswerā variable will become this:Ā
We can use the same code to join the second and third search results. And at the end, we will tell ChatGPT to generate the response for the user:Ā
ĀStep 9 - Give ChatGPT the Search Result
Ā
Now we will pass the result result back to ChatGPT. Note that we should send the answer using the āsystem requestā block, which makes it clear to ChatGPT that this answer is from the system, not the user. We will still ask ChatGPT to store the response in the āresponseā variable, which will overwrite the previous response.
Ā
After this step, the āresponseā variable contains the new response based on the web search result, and we can continue to append that to the chat history.If you test with the same request again, ChatGPT will produce the correct answer!
Ā
ĀFurther Improvements
Ā
In this tutorial, you have learned how to enhance ChatGPT with a web search tool. What can you do to make it better? Here are some ideas worth trying:
-
Improve the Prompt: If you test the program more, you may still find that sometimes it would fail to run the web search. It would help if you could add another example conversation to the prompt. You can also try to refine the instructions in the prompt to tell ChatGPT what the expected behavior is.
-
Fetch the Page Content: The current program only feeds ChatGPT with the title and snippet of each web page in the search result. For more complex questions, this may not contain the information the user is asking for. A further enhancement is to give ChatGPT another tool: fetch web page. To do that, you need to modify the prompt with a few changes:
- Give ChatGPT the link URL for each search result
- Tell ChatGPT if it needs the full content of any page, it can issue another special command āFETCH: URL of the pageā.
- When we receive the FETCH request, fetch the content of that page using the āfetch web page as markdownā block from the Cloud extension, then send the content back to ChatGPT.
-
RE: Viewing Remixes
We have added the list of remixes (that are shared by the author) in the project page. Please let us know your feedback.
-
RE: my project keeps on breaking
Sorry about this issue. Just to confirm, the block thatās causing trouble is the āregexā block, right? Was it generated by XO? And what did you do to cause it to ābreakā?
-
New features for making Scratch more accessible
Introduction
Ā
Although MIT Scratch is an extremely popular programming language for K-12 students, it has several accessibility issues that limit its usability for students with disabilities. For example, it relies heavily on the visual programming editor, which makes it difficult for those who use screen readers or have low vision to interact with the coding environment effectively.
On the CreatiCode platform, we have enhanced Scratch with many new features to enhance its accessiblity, and this article will give an overview.
Ā
ĀRead Blocks Aloud
Ā
On top of the code editor, there is a speaker button. When it is clicked, an AI voice will talk through the program block by block in the language selected by the user. If the button is clicked again, the voice will stop.
Ā
Ā
This tool will benefit several groups of users, such as:- Visually-impaired users
- Users with reading difficulties
- Neurodivergent learners
- Beginner users
Ā
ĀVoice-Input for Blocks
Ā
You can also find a microphone button on top of the code editor. When you click on it, the Microphone of the device will be activated, and your speech will be recognized as text. You can use the language you selected in the playground when you speak. Everytime a complete sentence has been recognized, it will be processed by an AI agent, which will modify the blocks in the code editor accordingly. You can not only add new blocks, but also update or remove blocks. Here are some example commands you can try:
- move 30 steps: will add the āmove (30) stepsā block
- actually, change it to 50 steps: will edit the block to change 30 to 50
- now, letās turn left 45 degrees: will add a new āturn leftā block.
- start over: will remove all the blocks except for the green flag clicked block
Ā
Note that after you complete a sentence, the AI assistant will switch from ālisteningā to ācodingā, and after the program is updated, it will switch back to the ālisteningā mode. You can only start a new command in the ālisteningā mode.
Ā
Ā
This tool also has several benefits:- Users no longer need to search for and drag blocks into the editor. This is especially useful for users with limited fine motor skills or mobility challenges
- Users on mobile devices or phones where the screen is small and it is hard to drag blocks
- Visually-impaired Users
- Neurodivergent learners
- Young users who struggle with reading or typing
Ā
ĀSimplified Motion Blocks
Ā
In the motion category, a set of simple blocks are added that can make the sprite move or turn without. To use them, students do not need to know about coordinates, count of steps or degree of angles. This makes the platform more accessible to young learners or learners with difficulty in working with numbers.
The blocks are:
- Up/Down/Left/Right Arrows: these blocks will make the sprite glide 40 steps to the given direction with a short animation.
- Point Up/Down/Left/Right: these blocks will turn the sprite to the given direction with a short animation.
- go to center: this block makes the sprite move to the center of the stage instantly.
- forward/backward: these blocks make the sprite move along its current direction forward by 40 steps with a short animation.
- turn left/right arrows: these blocks make the sprite turn left or right 90 degrees, relative to its current direction, with a short animation.
Ā
Ā
ĀUpdate Background Color
Ā
You can change the background color of the code editor using the dropdown menu on top of the playground:
Ā
Ā
This feature will benefit any user that find the original white background too bright, or its contrast with blocks too low.
Ā
ĀUpdate Custom Blockās Color
Ā
You can also change the color of the new custom blocks you define:
Ā
ĀAgain, this allows users to increase the contrast of block colors.
-
äøē»“ē©ē - ččäŗŗēÆ®ēļ¼é¾åŗ¦ļ¼5ēŗ§ļ¼
ēøå ³äø»é¢
Ā
Āå¼čØ
Ā
åØę¬ęēØäøļ¼ä½ å°ä½æēØē©ēå¼ęå¶ä½äøäøŖęč¶£ēēÆ®ēęøøęļ¼ęøøęēę³ę³ęÆļ¼ēÆ®ēéčæäøę ¹ē»³åčæę„å°ē©ŗäøēäøäøŖęé©äøļ¼å°±åččä¾ äøę ·ååęåØćē©å®¶åÆ仄å³å®ä½ę¶ę·»å ęē§»é¤čæę ¹ē»³åļ¼č®©ēč½å „ēÆ®ēć
Ā
Āē¬¬1ę„ - åå»ŗåø¦ęē©ēęęēē©ŗåŗęÆ
Ā
é¦å ļ¼čÆ·åØCreatiCodeęøøä¹åŗäøåå»ŗäøäøŖę°é”¹ē®ļ¼å é¤å°ēēč§č²Sprite1ļ¼å¹¶å°āEmpty1āč§č²éå½åäøŗāMaināļ¼äø»č§č²ļ¼ćåØMainč§č²äøļ¼ę·»å 仄äøē§ÆęØåćå®ä»¬å°åå»ŗäøäøŖåø¦ęč天ē3DåŗęÆļ¼ę¾ē¤ŗ3Dåę č½“ļ¼å¹¶ēØ-500ēéååÆēØē©ēęęć
Ā
ä½ åŗčÆ„ä¼ēå°ļ¼Ā
Āē¬¬2ę„ - å¶ä½4äøŖę°ē§ÆęØ
Ā
åØčæäøŖęøøęäøļ¼4äøŖå ³é®éØ件ęÆēÆ®ēćäøé“ēęé©ćēÆ®ēåå®ēęÆę¶ć让ę们å¶ä½čæ4äøŖę°ē§ÆęØę„ē»ē»ę们ē代ē ļ¼Ā
Āē¬¬3ę„ - ä½æēØē©å½¢ē®”ę·»å ēÆ®ē
Ā
äøŗäŗēč£ ēÆ®ēļ¼ę们åÆ仄ä½æēØ锶éØå¼å£ēē©å½¢ē®”ć仄äø3äøŖē§ÆęØå°ę·»å äøäøŖå°ŗåÆøäøŗ150x150ļ¼ę·±åŗ¦äøŗ80ēē©å½¢ē®”ćę们ä½æēØāē©å½¢ē®”āå½¢ē¶äøŗå ¶ę·»å ē©ēå®ä½ļ¼å¹¶å°å ¶č“Øéč®¾äøŗ0ļ¼č®©å®ę¬ęµ®åØē©ŗäøćęåå¼¹č®¾äøŗ0ļ¼čæę ·ēå°±äøä¼å¼¹åŗę„ļ¼ę©ę¦č®¾äøŗ100%ä¼åę ¢ēēęč½¬éåŗ¦ćę们ēØē½č²ēŗæę”åØē»æč²ē½ę ¼äøē»å¶ćĀ
ä½ ä¼å¾å°čæę ·ēēÆ®ēļ¼
Ā
Ā
Āē¬¬4ę„ - ē§»åØåęč½¬ēÆ®ē
Ā
ę„äøę„ļ¼ę们ę²æYč½“ååē§»åØēÆ®ēļ¼č®©ēęč¶³å¤ēęåØē©ŗé“ćčæč¦č®©ēÆ®ēē»Xč½“ęč½¬45åŗ¦ļ¼čæę ·å®ēå¼å£å°±ä¼é¢åę们ćĀ
ē°åØēÆ®ēēä½ē½®ęÆčæę ·ēļ¼Ā
Āē¬¬5ę„ - ę·»å ęé©
Ā
ē°åØ让ę们귻å ęé©ćę们å°ēØäøäøŖåēÆę„č”Øē¤ŗęé©ćē±äŗę²”ęāåēÆāå½¢ē¶ēē©ēå®ä½ļ¼ę们åÆ仄ē®åå°ä½æēØāēä½āęāēåāå½¢ē¶ćå äøŗęé©äøä¼äøå ¶ä»ē©ä½ē¢°ęļ¼å½¢ē¶å¹¶äøéč¦ćęč“Øéč®¾äøŗ0ļ¼č®©å®äæęäøåØćåå¼¹åę©ę¦ēå¼ä¹äøéč¦ćä½ åÆ仄äøŗå®ę·»å ä»»ä½é¢č²ēē½ę ¼ęč“ØćĀ
å®åŗčÆ„ēčµ·ę„åčæę ·ļ¼Ā
Āē¬¬6ę„ - ē§»åØåęč½¬ęé©
Ā
ęé©éč¦č¢«ē§»åØå¾ę“é«ļ¼čæę ·å®åÆ仄åø®å©ēęåØę“éæēč·ē¦»ćčæč¦č®©å®ē«ē“ē«ē«ćčæäø¤äøŖē§ÆęØåÆ仄åå°ļ¼Ā
ē°åØęé©ēčµ·ę„ęÆčæę ·ēļ¼Ā
Āē¬¬7ę„ - ę·»å ēēęÆę¶
Ā
ēēęÆę¶ęÆäøäøŖę¾åØēäøé¢ēå°å¹³é¢ćå½ęøøęå¼å§ę¶ļ¼ēä¼åØęÆę¶äøå¼¹č·³ļ¼ē“å°ēØę·å°ēčæę„å°ęé©ćę们å°ęÆę¶ę¾åØYä½ē½®äøŗ-500ēå°ę¹ļ¼čæę ·å½čæę„å°ęé©ę¶ļ¼ēä¼ååęåØćęÆę¶ēåå¼¹č®¾äøŗ100%ļ¼ä»„äæęēåå¼¹ć
Ā
ęÆę¶ä¼ēčµ·ę„åčæę ·ļ¼Ā
Āē¬¬8ę„ - ę·»å ēÆ®ē
Ā
ęåäøäøŖéØ件ęÆēÆ®ēćę³Øęļ¼å®éč¦č¢«å½åļ¼å¹¶äøéč¦ä½æēØ25ēZåē§»éļ¼čæęÆå®é«åŗ¦ēäøåćå®å°č¢«ę¾åØēēęÆę¶ę£äøę¹ćåå¼¹č®¾äøŗ100%ļ¼ä»„äæęå®ä»ęÆę¶äøåå¼¹ćę©ę¦č®¾äøŗ100%ļ¼čæę ·å½å®č½å „ēÆ®ēę¶ä¼čæ éåę¢ęč½¬ć
Ā
ē°åØčæč”ēØåŗļ¼ä½ åŗčÆ„ēå°äøäøŖå¼¹č·³ēēļ¼Ā
Āē¬¬9ę„ - ę·»å č·éęåęŗ
Ā
å äøŗēä¼ååęåØļ¼ę们éč¦ę·»å äøäøŖč·éęåęŗę„č·éēćę们å°č®©ęåęŗä»„ę°“å¹³č§åŗ¦45åŗ¦č§åÆēļ¼čæę ·ę“容ęå¤ęä½ę¶čæę„ęęå¼ēäøęé©ćę们čæå°å ¶č®¾ē½®äøŗāčŖē±āęØ”å¼ļ¼čæę ·ē©å®¶åÆ仄čŖē±č°ę“ęåęŗćĀ
ē°åØēä¼å§ē»åØę们ēęåęŗč§å¾äøåæļ¼Ā
Āē¬¬10ę„ - ę·»å äøäøŖęé®ę§ä»¶
Ā
äøŗäŗ让ē©å®¶čæę„ęęå¼ēäøęé©ļ¼ę们åÆ仄ä½æēØęé®äŗ件ęęé®ē¹å»äŗ件ćåØčæē§ę åµäøļ¼ęé®ę“儽ļ¼å äøŗå®åÆ仄让ē©å®¶åØęęŗęiPadäøē©ļ¼čæäŗč®¾å¤ę²”ęé®ēć仄äøē§ÆęØå°ęé®ę¾åØčå°ēå³äøč§ćå äøŗē©å®¶ēē¬¬äøäøŖåØä½ęÆčæę„ēäøęé©ļ¼ę们åŗčÆ„åØęé®äøę¾ē¤ŗāčæę„āć
Ā
ęé®ēé»č®¤ę ·å¼å¦äøļ¼Ā
Āē¬¬11ę„ - ę“ę°ęé®ę ·å¼
Ā
äøŗäŗ让ęé®ēčµ·ę„ę“儽ļ¼ę们åÆ仄ēØčæäø¤äøŖē§ÆęØę¹åčęÆåęåę ·å¼ļ¼Ā
ęé®ē°åØēčµ·ę„ęÆčæę ·ēļ¼Ā
Āē¬¬12ę„ - å°ēčæę„å°ęé©
Ā
ē°åØę们åå¤å„½čæäøŖ锹ē®äøęéč¦ēäøę„äŗćäøŗäŗ让å®ēčµ·ę„åēēØäøę ¹ē»³åčæę„å°ęé©ļ¼ę们éč¦åäø¤ä»¶äŗć- é¦å ļ¼ę们éč¦ę·»å äøäøŖč·ē¦»ēŗ¦ęļ¼å®ä¼č®©ēäøęé©äæęēøåēč·ē¦»ćęäŗčæäøŖēŗ¦ęļ¼ēäøä¼ęäøę„ļ¼čęÆåØęé©äøę¹ę„åęåØć
- å ¶ę¬”ļ¼ę们éč¦åØēåęé©ä¹é“ę·»å äøę”ēŗæę„č”Øē¤ŗāē»³åāćę³Øęę们éč¦ä½æēØē§»åØēēŗæļ¼å®ä¼éēēē§»åØć
ę³Øęļ¼å½ę们귻å č·ē¦»ēŗ¦ęę¶ļ¼ę们éč¦ä½æēØāęé©āä½äøŗē¬¬äøäøŖč¾å „ļ¼å äøŗęé©ęÆéę¢ēļ¼čēä¼ęåØćāē§»åØēēŗæāä¼éēēē§»åØļ¼ę们åÆ仄ēØāå°ęÆÆāēŗ¹ēę„ę“ę°ēŗæę”ļ¼ä½æå ¶ēčµ·ę„åē»³åć
Ā
ē°åØå¦ęę们ē¹å»āčæę„āļ¼ē»³åä¼åŗē°ļ¼ēčµ·ę„ēåØęåØćĀ
Āē¬¬13ę„ - ē§»é¤ēēęÆę¶
Ā
å½ēåØęé©äøęåØę¶ļ¼ęę¶å®åÆč½ä¼ē¢°å°ēēęÆę¶ļ¼Ā
äøŗäŗéæå čæäøŖé®é¢ļ¼ę们åŗčÆ„åØčæę„ēäøęé©ę¶ē§»é¤ēēęÆę¶ļ¼Ā
Āē¬¬14ę„ - ęøøęé¶ę®µ
Ā
å½ēčæę„å°ęé©åļ¼ē©å®¶ēäøäøäøŖåØä½ęÆęå¼čæę„ļ¼čæä¼ęēęåēÆ®ēćäøŗäŗ让ēé¢ē®åļ¼ę们åÆ仄éå¤ä½æēØåäøäøŖęé®ę„ę§č”čæäøŖåØä½ćå äøŗę们ä½æēØåäøäøŖęé®ę„ę§č”äøåēęä½ļ¼ę们éč¦äøē§ę¹ę³ę„č·čøŖå½åēāęøøęé¶ę®µāćåØčæäøŖęøøęäøļ¼ę3äøŖé¶ę®µļ¼
- é¶ę®µ1ļ¼ä»ęøøęå¼å§å°ē©å®¶å°ēčæę„å°ęé©ēé£äøå»ļ¼
- é¶ę®µ2ļ¼ä»ē©å®¶å°ēčæę„å°ęé©ēé£äøå»å°ē©å®¶ęå¼čæę„ēé£äøå»ļ¼
- é¶ę®µ3ļ¼ēä»ęé©äøęå¼åć
ę们åÆ仄ä½æēØäøäøŖåäøŗāphaseāļ¼é¶ę®µļ¼ēåéę„č”Øē¤ŗå½åēé¶ę®µćčÆ·åå»ŗčæäøŖę°åéļ¼å¹¶åØęøøęå¼å§ę¶å°å ¶č®¾äøŗ1ļ¼
Ā
Āē¬¬15ę„ - åØé¶ę®µ1å¤ēęé®ē¹å»
Ā
ē°åØę们åÆ仄åØęé®č¢«ē¹å»ę¶čæč”äøåē代ē åćę们已ęē代ē ååŗčÆ„åŖåØāphaseāåéäøŗ1ę¶čæč”ļ¼Ā
Āē¬¬16ę„ - åå¤čæå „é¶ę®µ2
Ā
å®ęé¶ę®µ1åļ¼ę们åŗčÆ„å°āphaseāåéč®¾äøŗ2ļ¼å äøŗę们čæå „äŗé¶ę®µ2ćčæč¦ęęé®ę¹äøŗę¾ē¤ŗāęå¼āļ¼å äøŗē©å®¶éč¦åØé¶ę®µ2ęå¼ē»³åļ¼Ā
ē°åØļ¼å½ę们ē¹å»å®ę¶ļ¼ęé®ä¼ę¹åęåļ¼Ā
Āē¬¬17ę„ - åØé¶ę®µ2å¤ēęé®ē¹å»
Ā
åØé¶ę®µ2ļ¼å½ēØę·ē¹å»ęé®ę¶ļ¼ę们åŗčÆ„ē§»é¤č·ē¦»ēŗ¦ęåē»³åļ¼č®©ēčŖē±é£č”ćčæč¦ē§»é¤ęé®ļ¼å äøŗē©å®¶ę²”ęę“å¤ēęä½ćę们ä¹åŗčÆ„å°āphaseāč®¾äøŗ3ćĀ
ē°åØęøøęåÆ仄ē©äŗļ¼ē¹å»āčæę„āę·»å ē»³åļ¼ē¶åē¹å»āęå¼āęēÆ®ļ¼Ā
Āē¬¬18ę„ - ę£ę„ęÆå¦ęå
Ā
åØé¶ę®µ3ļ¼ę们éč¦ę£ę„ēęÆå¦č½å „ēÆ®ēćę们åÆ仄ēØäøäøŖāę°øä¹ éå¤āå¾ŖēÆęÆē§ę£ę„äøꬔļ¼Ā
Āē¬¬19ę„ - ę£ę„ēēä½ē½®åéåŗ¦
Ā
å¦ęēč½å „ēÆ®ēļ¼å®åŗčÆ„åę¢ē§»åØļ¼Zč½“ēä½ē½®åŗčÆ„ēøåƹēسå®ćę们åÆ仄ē“ę„ä½æēØāč·åāē§ÆęØę„ę£ę„čæäø¤äøŖå¼ļ¼Ā
Zč½“éåŗ¦åŗčÆ„ę„čæ0ļ¼Zč½“ä½ē½®åŗčƄ大ēŗ¦ęÆ-131.8ćę们åÆ仄ēØčæäø¤äøŖę”件ę„ę£ę„ęÆå¦ęåļ¼å¦ęęåå°±ę¾ē¤ŗäøäøŖę ē¾ćĀ
ē°åØę们ä¼å¾å°čæę ·ēęåę¶ęÆļ¼Ā
Āē¬¬20ę„ - ę“ę°ę ē¾ę ·å¼
Ā
äøŗäŗ让ę ē¾ēčµ·ę„ę“儽ļ¼ę们åÆ仄ę“ę°å®ēčęÆåęåę ·å¼ļ¼Ā
ē°åØęåę¶ęÆēčµ·ę„ęÆčæę ·ēļ¼Ā
Āē¬¬21ę„ - ęø ēå·„ä½
Ā
ęåļ¼äøŗäŗęø ēäøäøļ¼ę们åŗčÆ„éč3Dåę č½“ļ¼Ā
čæęÆęøøęēęē»ę¼ē¤ŗļ¼Ā
Āåęę³ę³
Ā
ä½ åÆ仄ēØå¾å¤ę¹ę³ę„ę©å±čæäøŖ锹ē®ć仄äøęÆäøäŗē¤ŗä¾ę³ę³ļ¼-
ę¹ååę°ļ¼ä½ åÆ仄å°ēćęé©åēÆ®ēē§»åØå°äøåēä½ē½®ćä½ åÆ仄ę¹åēęēÆ®ēē大å°ļ¼ęč ę¹ååŗęÆēéåć
-
äø¤äøŖęé©ļ¼åØä»ē¬¬äøäøŖęé©ęå¼åļ¼ä½ åÆ仄å č®øē©å®¶åØé¶ę®µ3čæę„å°å¦äøäøŖęé©ļ¼ē¶ååØé¶ę®µ4ä»å®ęå¼ćē¬¬äŗäøŖęé©ä¹åÆ仄åØäøåēę¹åäøćčæä¼č®©ęøøęę“å ęęęę§ćäøé¢ęÆäøäøŖē¤ŗä¾ļ¼
Ā
- éē¢ē©ļ¼äøŗäŗ让ęøøęę“å ęč¶£ļ¼ä½ åÆ仄귻å äøäŗéęē©ä½ä½äøŗéē¢ē©ļ¼č®©ē©å®¶åæ é”»éæå¼å®ä»¬ć